Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memindahkan Model dengan Lancar Antara Apl Django dengan Django 1.7?

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

Barbara Streisand
Barbara Streisandasal
2024-11-04 20:33:021070semak imbas

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>
  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>

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>
  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>

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!

Kenyataan:
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