question_text의 속성을 변경하고 저장했습니다
그런 다음 __str__() 메서드를 추가하고 모든 질문을 다시 쿼리합니다.
위 코드는
http://www.yiibai.com/django/...에 따라 구현되었습니다. 방금 배웠고, 단계는 이 튜토리얼과 동일합니다. 즉, __str__() 메서드를 추가한 후입니다. , 튜토리얼의 올바른 표시는 아래와 같습니다:
직접 테스트해보고 명령어를 입력했는데 변경 후 기록이 보이지 않네요. 예를 들어
q.question_text = "What's up?"
q.save()
변경 사항을 저장한 후 다음 명령을 실행합니다.
Question.objects.all()
결과는 아래와 같습니다.
이유는 무엇입니까 - Django1.9, 데이터베이스는 기본 sqlite3입니다
巴扎黑2017-06-30 09:57:15
def __str__ 이것은 질문 모델의 클래스 메서드여야 합니다. 이 메서드는 쿼리할 때 return self.question_text를 정의하므로 개체를 쿼리할 때 개체의 질문_text 속성을 반환합니다. 형식이 잘못되었습니다. 이 메서드를 클래스 외부에서 정의하면 단일 함수가 되며 쿼리할 때 기본적으로 질문 개체가 반환됩니다.
typecho2017-06-30 09:57:15
tianren124님의 답변 덕분에 문제가 해결되었습니다.
먼저 models.py를 수정해야 합니다:
models.py
위의 model.py 코드를 변경한 후 저장하고 cmd를 열고 다시 입력하세요
으아악동시에 입장
으아악이전 질문의 결과와 달리 Question.objects.all()을 입력하면 실행 결과는 q.question_tex "What's up?"을 변경한 후의 값임을 알 수 있습니다.
해결 방법:
1. 모델을 수정합니다. py
는
에 배치되어야 합니다. 으아악 으아악넣어도
으아악내 앞에서는 왜 그런지 잘 모르겠습니다.
2. 들여쓰기에 주의하세요:
표현이 명확하지 않을 수 있으니 정정해주세요