Bagaimana menggabungkan Django dengan basisdata warisan

Selagi Django adalah terbaik cocok untuk pengembangan aplikasi baru, dia sangat dimungkinkan untuk menggabungkan nya kedalam warisan basisdata. Django menyertakan sepasang peralatan untuk mengotomatisasi sebanyak mungkin proses ini.

Dokumen ini menganggap anda mengetahui dasar-dasar Django, seperti yang tercakup dalam tutorial.

Sekali anda telah menyetel Django, anda akan mengikuti pengolahan umum untuk digabungkan dengan basisdata yang ada.

Berikan Django parameter basisdata anda

Anda akan butuh memberitahu Django apa parameter hubungan basisdata anda, dan apa nama dari basisdatanya. Lakukan itu dengan menyunting pengaturan DATABASES dan tetapkan nilai-nilai pada kunci-kunci berikut untuk hubungan 'default':

Model yang dibangun otomatis

Django comes with a utility called inspectdb that can create models by introspecting an existing database. You can view the output by running this command:

$ python manage.py inspectdb

Save this as a file by using standard Unix output redirection:

$ python manage.py inspectdb > models.py

Fitur ini berarti sebagai sebuah jalan pintas, bukan sebagai generasi model tetap. Lihat documentation of inspectdb untuk informasi lebih.

Sekali anda telah membersihkan model anda, namai berkas models.py dan taruh dia di paket Python yang menampung aplikasi anda. Kemudian tambah aplikasi ke pengaturan INSTALLED_APPS anda.

Secara awal, djadmin:inspectdb membuat model tidak terkelola. Yaitu, managed = False dalam kelas Meta model memberitahu Django tidak mengelola setiap pembuatan tabel, perubahan, dan penghapusan:

class Person(models.Model):
    id = models.IntegerField(primary_key=True)
    first_name = models.CharField(max_length=70)

    class Meta:
        managed = False
        db_table = "CENSUS_PERSONS"

Jika anda tidak ingin mengizinkan Django mengelola siklus hidup tabel, anda butuh merubah pilihan managed diatas menjadi True (atau memindahkannya karena True adalah nilai awal).

Pasang tabel inti Django

Next, run the migrate command to install any extra needed database records such as admin permissions and content types:

$ python manage.py migrate

Uji dan ubah

Itu adalah langkah-langkah awal -- dari sini anda akan ingin menyesuaikan model DJango dibangkitkan sampai mereka bekerja dengan cara yang anda inginkan. Coba mengakses data melalui API basisdata Django, dan coba menyunting obyek melalui situs admin Django, dan menyunting berkas model.

Back to Top