Dinamik seçimli bir modelim var ve eğer bir kodun söz konusu olması durumunda kodun çalıştırıldığını garanti edersem boş bir seçim listesi vermek istiyorum. django-admin.py migrate/makemigrations
ya işe yaramaz seçim değişiklikleri hakkında ya yaratmayı ya da uyarmayı engelleyen komut.Kodun migrate/makemigrations komutu bağlamında çalıştırılıp çalıştırılmadığını tespit edin
Kodu: Ben o zaman çıkışa boş seçim listesi seçebilir lazy_discover_foreign_id_choices
yılında çalışma bağlamı algılayabilir eğer
from artist.models import Performance
from location.models import Location
def lazy_discover_foreign_id_choices():
choices = []
performances = Performance.objects.all()
choices += {performance.id: str(performance) for performance in performances}.items()
locations = Location.objects.all()
choices += {location.id: str(location) for location in locations}.items()
return choices
lazy_discover_foreign_id_choices = lazy(lazy_discover_foreign_id_choices, list)
class DiscoverEntry(Model):
foreign_id = models.PositiveIntegerField('Foreign Reference', choices=lazy_discover_foreign_id_choices(),)
Yani düşünürdüm.
sys.argv
ve
__main__.__name__
testlerini düşünüyordum ama muhtemelen daha güvenilir bir yol veya bir API var mı?
Seçimleriniz tam olarak nasıl dinamik? Bazı kodlar gönderir misiniz? – aumo
Elbette, kod eklendi – DanH
"Performans" ve "Yer" i nasıl içe aktarıyorsunuz? – Ivan