Tôi mới dùng Django và có mô hình Ứng dụng và mô hình Môi trường. Môi trường có ứng dụng như một ngoại ngữ. Tôi biết rằng tôi cần phải viết một phương thức unicode() để trình bày mô hình có thể đọc được của con người, nhưng có cách nào để lấy thuộc tính từ đối tượng ngoại khoá để hiển thị như một phần của chuỗi không?django - mô hình unicode() hiển thị thuộc tính đối tượng ngoại khóa
class Application(models.Model):
app_id = models.IntegerField(primary_key=True)
app_name = models.CharField(max_length=200)
app_description = models.CharField(max_length=2000, blank=True)
def __unicode__(self):
return self.app_name
class Environment(models.Model):
app_id = models.ForeignKey(Application, db_column='app_id')
environ_id = models.IntegerField(max_length=6)
environ_name = models.CharField(max_length=200)
def __unicode__(self):
return '%s %s' % (application__app_name, self.environ_name)
Tôi muốn mô hình Môi trường được biểu diễn dưới dạng "app_name environ_name".
Cập nhật: Lý do tôi muốn hiển thị mô hình Môi trường là "app_name environ_name" để người dùng nhập dữ liệu trên trang quản trị rõ ràng hơn. Ví dụ, app_name sẽ là "NavSystem" và environ_name sẽ là "DEV1", do đó, có mô hình Môi trường được biểu thị là "NavSystem DEV1" hữu ích hơn chỉ là "DEV1".
Tuyệt vời, đây chính xác là những gì tôi cần. Cảm ơn! – MD6380
nếu tôi sử dụng "cú pháp chấm" để truy cập đối tượng Key ngoài, tôi nhận được: đối tượng 'NoneType' không có thuộc tính 'name'. Tôi sử dụng bản thân.. . Thuộc tính "name" tồn tại. –
Timo