django-dfk

Software screenshot:
django-dfk
Rincian Software:
Versi: 0.0.5
Tanggal Upload: 11 May 15
Pengembang: Dan Fairs
Lisensi: Gratis
Popularitas: 7

Rating: 2.0/5 (Total Votes: 1)

alat Django-DFK ditangguhkan kunci asing untuk Django. Kunci asing ditangguhkan secara konseptual mirip dengan kunci asing generik, kecuali bahwa mereka memutuskan untuk kunci asing nyata pada saat runtime, dan menyebabkan kunci asing yang tepat yang akan dibuat dalam database.
Paket ini memungkinkan Anda untuk melakukan dua hal:
* Menyatakan bahwa bidang kunci asing model adalah 'deferrable', dan harus repointed kemudian
* Repoint bidang kunci asing model yang sudah ada, bahkan jika model yang tidak Django-DFK sadar.
Anda harus melakukan yang terakhir dengan hati-hati - menganggapnya sebagai proses yang sama dengan monyet-patching!
Paket Django-DFK adalah perangkat lunak alpha, dan tidak fitur lengkap & nbsp;. Lihat bagian TODO untuk apa yang ada di daftar.
Instalasi :
Install Django-DFK menggunakan manajer paket Python pilihan Anda. Penggunaan virtualenv juga dianjurkan:
pip menginstal Django-DFK
Penggunaan :
Menunjuk kunci asing tunggal
Katakanlah Anda ingin menciptakan roda, dan mengembangkan aplikasi komentar. Model komentar Anda mungkin terlihat seperti ini, di mycomments.models:
dari DFK impor DeferredForeignKey
kelas Komentar (models.Model):
& Nbsp; commenter = models.ForeignKey ('auth.User')
& Nbsp; content = DeferredForeignKey ()
& Nbsp; tubuh = models.TextField ()
Sekarang, Anda datang untuk mengintegrasikan aplikasi ini dengan sistem blog Anda (yang, seperti Anda tertarik pada roda reinvention, Anda juga menulis sendiri). Berikut blog / models.py:
dari DFK titik impor
dari mycomments.models impor Komentar
kelas BlogPost (models.Model):
& Nbsp; title = models.CharField (max_length = 100)
& Nbsp; slug = models.SlugField ()
& Nbsp; tubuh = models.TextField ()
titik (Komentar, 'konten', BlogPost)
Panggilan ke titik akan menggantikan DeferredForeignKey pada Komentar dengan kunci asing untuk BlogPost.
Pointing mungkin kunci asing sekaligus
Ketika menulis model yang menggunakan kunci asing tangguhan, Anda mungkin perlu untuk menyatakan bahwa angka harus menunjuk ke yang sama 'jenis' dari objek. Katakanlah Anda memiliki scope creep liar, dan aplikasi mengomentari Anda diperlukan kemampuan untuk mengaitkan gambar dengan posting blog. Jadi Anda mengedit models.py komentar aplikasi Anda sehingga terlihat seperti ini:
dari DFK impor DeferredForeignKey
kelas Komentar (models.Model):
& Nbsp; commenter = models.ForeignKey ('auth.User')
& Nbsp; content = DeferredForeignKey (nama = 'Konten')
& Nbsp; tubuh = models.TextField ()
Kelas Gambar (models.Model):
& Nbsp; gambar = models.ImageField ()
& Nbsp; content = DeferredForeignKey (nama = 'Konten')
Ini mengungkapkan bahwa baik komentar dan gambar harus menunjuk ke jenis yang sama model. Hal ini dicapai dengan fungsi point_named:
dari DFK impor point_named
point_named ('blog', 'Konten', BlogPost)
Sekarang, semua contoh DeferredForeignKey di app blog yang disebut Content akan digantikan oleh kunci asing nyata untuk BlogPost.
Argumen ke kunci asing yang dihasilkan
Ketika mendeklarasikan kunci asing ditangguhkan, Anda dapat menentukan argumen kata kunci tambahan. Selain nama, ini akan diteruskan verbatim ke kunci asing akhir.
Hal ini juga memungkinkan untuk melewati argumen kata kunci yang sewenang-wenang dalam panggilan ke titik atau point_named. Ini juga akan diteruskan ke kunci asing akhir. Dimana argumen yang hadir di kedua definisi DFK dan di titik / panggilan point_named, argumen dari kedua akan diutamakan.
Ucapan Terima Kasih
Berkat ISM Fantasy Game Ltd untuk mensponsori paket ini

Apa yang baru dalam rilis ini:.

  • Perbaiki masalah di mana cache objek terkait pada _meta Pilihan kelas model 'tidak sedang repopulated pada repoint a. Hal ini menyebabkan masalah di mana penyaringan pada model orang tua yang berkaitan dengan anak menggunakan kunci asing tangguhan bisa gagal jika DFK itu (re) menunjuk setelah tahap awal model pembebanan sudah terjadi.

Apa yang baru di versi 0.0.4:

  • Sertakan MANIFEST.in untuk memastikan dokumen yang dikemas
  • .

Apa yang baru di versi 0.0.2:

  • Perbaiki Kesalahan kemasan terelakkan

Persyaratan :

  • Django
  • Python

Perangkat lunak lain dari pengembang Dan Fairs

django-lazysignup
django-lazysignup

20 Feb 15

Komentar untuk django-dfk

Komentar tidak ditemukan
Tambahkan komentar
Aktifkan gambar!