Bir test SQLite veritabanından bir PostgreSQL veritabanına geçiş yapıyorum.Django ve PostgreSQL - tür karakter için çok uzun değer (512)
SQLite üzerinde çalışan ancak PostgreSQL'de bir hata veren, veritabanına eklenmiş bir örnek nesnem var.
Kod pasajı geçerli:
DatabaseError at /create/
value too long for type character varying(512)
Traceback
(...)
description = 'GORGEOUS ORANGE SS!!',
(...)
benim modelin açıklama alanına 512 max karakter uzunluğu:
description = models.CharField(max_length=512,default='')
Ama var bir alıyorum
car = CarItem.objects.create(
user = motor_trend,
name = 'Camaro 2010',
category = cars,
condition = 'Used',
price = '28,547.00',
production_year = '2010',
color_interior = 'Black',
color_exterior = 'Inferno Orange Metallic',
reference = 'PRC17288',
location_of_creation = 'Undisclosed',
location_current = 'Columbus, OH, USA',
description = 'GORGEOUS ORANGE SS!!',
)
car.save()
Bu dizenin 512 bayttan fazla olması mümkün değildir.
Bu hata hakkında, kodlamaya atıfta bulunan önceki yayınları okudum. Durum böyle görünmüyor.
Webfaction'da barındırıldım. Utf-8 kodlamasıyla bir veritabanı oluşturdum ve syncdb'yi kullanmaya başladım. Syncdb mükemmel çalıştı ama şimdi bu nesne ekleme başarısız oluyor.
Birisi biraz girdi verebilir mi? Teşekkür ederim. Bazı Django documentation kazma sonra
Yabancı anahtarlar. Ve Django'nun ORM'si muhtemelen alan adlarını doğru bir şekilde aktarıyor. –
Evet, daha önce tanımlanan Django değişkenleri, bazı dizeler, diğer nesneler. Bununla birlikte, bu açıklama sorunu ile ilgili mi? Açıklama problemine neden olan bir kullanıcı alanım var mı? –
@VascoPatricio: Soruna açık bir bağlantı yok, no. Belli bir şey olmadığı için şüpheli bir şey için avlanıyordum. El kitabına girdim ve şimdi bir şey bulduğumu düşünüyorum. Cevabımı değiştirdim, bir bak. –