Tôi đang di chuyển từ cơ sở dữ liệu SQLite thử nghiệm sang cơ sở dữ liệu PostgreSQL.Django và PostgreSQL - giá trị quá dài đối với loại ký tự khác nhau (512)
Tôi có một đối tượng mẫu được chèn vào trong cơ sở dữ liệu, đã làm việc trên SQLite nhưng lại cho tôi một lỗi trong PostgreSQL.
đoạn mã là:
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()
Tôi nhận được một:
DatabaseError at /create/
value too long for type character varying(512)
Traceback
(...)
description = 'GORGEOUS ORANGE SS!!',
(...)
Các trường mô tả mô hình của tôi có 512 max char dài:
description = models.CharField(max_length=512,default='')
Nhưng có không có cách nào chuỗi đó vượt quá 512 byte.
Tôi đã đọc các bài đăng trước về lỗi này, một là đề cập đến mã hóa. Có vẻ như không phải vậy.
Tôi được lưu trữ trên Webfaction. Tôi tạo ra một cơ sở dữ liệu, với mã hóa utf-8, và tiến hành sử dụng syncdb. Syncdb làm việc hoàn hảo nhưng bây giờ chèn đối tượng này không thành công.
Ai đó có thể đưa ra một số đầu vào? Cảm ơn bạn.
Vì chúng là khóa ngoại. Và ORM của Django có thể trích dẫn các tên trường đúng cách. –
Có, đó là những biến Django được xác định trước đó, một số chuỗi, các đối tượng khác. Tuy nhiên, điều này có liên quan đến vấn đề mô tả không? Thực tế là tôi có một trường người dùng gây ra sự cố mô tả? –
@VascoPatricio: Không có kết nối rõ ràng cho vấn đề, không. Vì không có gì rõ ràng, tôi đang săn lùng bất cứ điều gì đáng ngờ. Tôi đào sâu vào sách hướng dẫn và nghĩ rằng tôi đã tìm được thứ gì đó ngay bây giờ. Sửa đổi câu trả lời của tôi, có một cái nhìn. –