Tôi đang làm việc qua số Django tutorials và giờ tôi đang tạo cuộc thăm dò ý kiến.Mô hình Cuộc thăm dò Django
Đoạn code dưới đây hoạt động tốt cho đến khi tôi muốn tạo ra sự lựa chọn, mà vì một lý do tôi luôn luôn nhận được thông báo lỗi này:
line 22, in __unicode__
return self.question
AttributeError: 'Choice' object has no attribute 'question'
Tôi đang làm gì sai?
Dưới đây là mã của tôi:
import datetime
from django.db import models
class Poll(models.Model):
question = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
def __unicode__(self):
return self.question
def was_published_today(self):
return self.pub_date.date() == datetime.date.today()
class Choice(models.Model):
poll = models.ForeignKey(Poll)
choice = models.CharField(max_length=200)
votes = models.IntegerField()
def __unicode__(self):
return self.question # this is line 22
tôi đã làm điều đó và bây giờ tôi nhận được những phản ứng: >>> Poll.objects.all() [
True, tôi đoán nó sẽ là ngớ ngẩn để có một cái gì đó như 'return self.poll.question' cho đầu ra, hãy thử' return self.choice' –
Cảm ơn câu trả lời! Tôi không thể nói chắc chắn nếu return.self.choice là giải pháp vì vì một số lý do khác mà main_page sẽ không hiển thị ngay bây giờ. Vì vậy, tôi phải giải quyết và đóng câu hỏi này ngay bây giờ. Cảm ơn một lần nữa! Đây là trang web tốt nhất mà tôi đã gặp cho đến nay. Thực sự hữu ích! – MacPython
Nó nên là:
Bởi vì cuộc bình chọn là một mô hình có liên quan có chứa các câu hỏi.
Nguồn
2010-05-11 13:33:00
Để theo dõi câu trả lời đố tên, những hướng dẫn thực sự nói thêm lợi nhuận khác nhau cho mỗi mô hình:
Bạn có 'self.question' như sự trở lại cho cả hai - Tôi đang nghĩ đến bạn đã thực hiện cùng một lỗi sao chép/dán mà tôi đã làm, hoặc hướng dẫn trước đây đã có lỗi đó ;-)
Nguồn
2011-02-04 03:31:02
Đây thực sự là câu trả lời "đúng" dựa trên hướng dẫn. Bạn không chắc chắn lý do tại sao bạn muốn trả lại văn bản câu hỏi của cuộc thăm dò khi in một cá thể lựa chọn. – threejeez
Điều này là do lỗi bộ não người hoặc lỗi sao chép/dán. Chúng tôi/Bạn nghĩ rằng cả hai chức năng đều giống nhau và sao chép cùng một mã cho cả hai, nhưng có một từ khác nhau trong cả hai.
thay
question
đểchoice
trong dòng 22Nguồn
2013-05-21 16:11:54 aWebDeveloper
Các vấn đề liên quan