0
나는 이것을 성취하는 방법에 대해 고심하고 있습니다. 나는장고 동적 상세 이름
for a in range(1, 11):
locals()['ATL' + str(a)] = models.PositiveIntegerField(
choices=[
[1, 'Disagree Completely'],
[2, 'Disagree Strongly'],
[3, 'Disagree'],
[4, 'Neutral'],
[5, 'Agree'],
[5, 'Agree Strongly'],
[7, 'Agree Completely'],
],
widget=widgets.RadioSelectHorizontal(),
verbose_name = Constants.ATL_qu_list[a-1])
del a
그리고 다시 질문 번호 (에 따라 질문에 대한 자세한 이름을 변경 : 내가 뭘 원하는 그래서 같은 CharField 객체의 질문 (리 커트 테이블을 나타내는)의 시리즈를 가지고있다 변수를 저장하기 위해 locals()를 사용하지 않아야한다는 것을 알고 있습니다. 그래도 동적 인 레이블을 얻는 쉬운 방법이 있습니까? 감사!
:
따라서, 내가 대신 내가 원하는 것을 달성하기 위해이 방법을 사용했습니다. 모델 필드는 데이터베이스 열을 나타내며 동적 일 수 없습니다. 그리고 그들은 지역 변수가 아니라 모델 클래스의 속성으로 정의됩니다. 너 뭐하려고? –
Daniel 안녕하세요. 제 질문에 대한 답변을 찾은 것 같습니다. 내가하고 싶었던 것은 동적으로 다른 CharField를 다른 레이블로 선언하는 것입니다. 모든 Likert 설문지에 7 점 척도가 주어진다면 모든 CharField가 기능적으로 거의 같을 때 각 CharField를 따로 선언하는 것이 좋지 않은 코딩이라고 생각했습니다. 그래서 제가하고 싶었던 것은 리 커트 CharField를 한 번만 선언해야만하는 시스템을 개발 한 다음 묻는 질문에 따라 각각 다른 레이블을 적용하는 것입니다. 나는 아래에서 더 자세히 설명 할 것이다. – Krabo