Bagaimana untuk Memindahkan Model dengan Lancar Antara Apl Django dengan Django 1.7?

Barbara Streisand
Lepaskan: 2024-11-04 20:33:02
asal
979 orang telah melayarinya

How to Seamlessly Migrate Models Between Django Apps with Django 1.7?

Memindahkan Model Antara Apl Django dengan Django 1.7

Dengan Django 1.7, pengurusan struktur model menjadi lebih cekap. Katakan anda mempunyai model dalam satu apl yang anda perlu edarkan kepada apl individu. Begini cara anda boleh mencapai ini menggunakan migrasi Django:

Mengalih keluar Model daripada Apl Lama

  1. Buat migrasi kosong dalam apl lama:

    <code class="python">python manage.py makemigrations old_app --empty</code>
    Salin selepas log masuk
  2. Tambahkan kod berikut pada fail pemindahan yang dijana:

    <code class="python">class Migration(migrations.Migration):
        dependencies = []
    
        database_operations = [
            migrations.AlterModelTable('TheModel', 'newapp_themodel')
        ]
    
        state_operations = [
            migrations.DeleteModel('TheModel')
        ]
    
        operations = [
            migrations.SeparateDatabaseAndState(
                database_operations=database_operations,
                state_operations=state_operations)
        ]</code>
    Salin selepas log masuk

Menambah Model pada Apl Baharu

  1. Salin model ke fail model.py dalam apl baharu.
  2. Buat migrasi dalam apl baharu:

    <code class="python">python manage.py makemigrations new_app</code>
    Salin selepas log masuk
  3. Ubah suai fail migrasi yang dijana untuk memasukkan perkara berikut:

    <code class="python">class Migration(migrations.Migration):
    
        dependencies = [
            ('old_app', 'above_migration')
        ]
    
        state_operations = [
            migrations.CreateModel(
                name='TheModel',
                fields=[
                    ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ],
                options={
                    'db_table': 'newapp_themodel',
                },
                bases=(models.Model,),
            )
        ]
    
        operations = [
            migrations.SeparateDatabaseAndState(state_operations=state_operations)
        ]</code>
    Salin selepas log masuk

Dengan mengikut langkah ini, anda boleh mengalihkan model anda dengan lancar antara apl Django, memastikan lebih bersih dan teratur struktur pangkalan data.

Atas ialah kandungan terperinci Bagaimana untuk Memindahkan Model dengan Lancar Antara Apl Django dengan Django 1.7?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan