나는 장고와 파이썬에 대해 아주 익숙하며, 메소드를 사용하여 문제를 적절히 정의했다. 내가 여기 어떻게 보이는지 또 다른 방법으로 그 방법을 방법으로 계산을 저장 .. 및 전화 싶습니다장고 앱의 다른 메소드에서 변수에 액세스하기
def get_info_array(self, format=None, *args, **kwargs):
current_response_list = get_current_team(self)
member_info_array = []
for response_dic in current_response_list:
current_response = list(response_dic.values())[0]
chunk_score = get_chunk_score3()
print(chunk_score)
return chunk_score
def get_chunk_score3(self, format=None, *args, **kwargs):
answer_question1 = current_response.answers.get(question_id = 2)
answer_question2 = current_response.answers.get(question_id = 3)
json_answer_question1 = json.loads(answer_question1.body)
json_answer_question2 = json.loads(answer_question2.body)
answer_key_question1 = list(json_answer_question1.keys())[0][0]
answer_key_question2 = list(json_answer_question2.keys())[0][0]
if answer_key_question1 == "1" or "3":
score1 = list(json_answer_question1.values())[0]
else:
score1 = -list(json_answer_question1.values())[0]
if answer_key_question2 == "1" or "3":
score2 = list(json_answer_question2.values())[0]
else:
score2 = -list(json_answer_question2.values())[0]
chunk_score = math.ceil((score1+score2)/2)
return chunk_score
내가 current_response에 get_chunk_score3에서 정의되지 않는다는 것을 얻을 그 코드를 실행하려고, 다른 방법으로 변수에 액세스하려면 어떻게해야합니까?
아무 팁이나 진전을 환영합니다.
편집 : 전체 코드 :
class EmployeeChartData(APIView):
#import pdb; pdb.set_trace()
queryset = MyUser.objects.all()
serializer_class = MyUserSerializer
permission_classes = []
http_method_names = ['get',]
#authentication_classes = []
#permission_classes = []
#serializer_class = MyUserSerializer
def get_serializer_class(self):
return self.serializer_class
def get(self, request, format=None, *args, **kwargs):
chunk2 = get_chunk_score2(self)
info2 = get_info_relationship2(self)
rep_system2 = get_rep_system2(self)
reality = get_reality_structure2(self)
scenario = get_scenario_thinking2(self)
percept = get_perceptual_category2(self)
data = {
"chunk2":chunk2
}
return Response(data)
def get_current_team(self, format=None, *args, **kwargs):
current_team_member = Project.objects.get(id = self.kwargs['pk1']).team_id.members.all()
members_response_list = []
for member in current_team_member:
member_id = member.id
member_response = get_user_response(member_id)
members_response_list.append({member_id:member_response})
return members_response_list
def get_user_response(member_id):
current_user = MyUser.objects.get(id = member_id) #current_user
survey_team = Survey.objects.get(name= 'Survey SoftScore') #survey team (to change to final one)
current_response = ResponseModel.objects.filter(user = current_user, survey = survey_team)[0]
return current_response
def get_info_array(self, format=None, *args, **kwargs):
current_response_list = get_current_team(self)
member_info_array = []
for response_dic in current_response_list:
current_response = list(response_dic.values())[0]
chunk_score = get_chunk_score3()
print(chunk_score)
return current_response_list
def get_chunk_score3():
answer_question1 = current_response.answers.get(question_id = 2)
answer_question2 = current_response.answers.get(question_id = 3)
json_answer_question1 = json.loads(answer_question1.body)
json_answer_question2 = json.loads(answer_question2.body)
answer_key_question1 = list(json_answer_question1.keys())[0][0]
answer_key_question2 = list(json_answer_question2.keys())[0][0]
if answer_key_question1 == "1" or "3":
score1 = list(json_answer_question1.values())[0]
else:
score1 = -list(json_answer_question1.values())[0]
if answer_key_question2 == "1" or "3":
score2 = list(json_answer_question2.values())[0]
else:
score2 = -list(json_answer_question2.values())[0]
chunk_score = math.ceil((score1+score2)/2)
return chunk_score
데이터베이스에 저장하고 다음보기의 데이터베이스에서 검색하십시오. – Stack
다른 방법은 세션에 저장하는 것입니다 d up here https://stackoverflow.com/a/31707946/8150371 – Stack
이 코드는 클래스 내에 있습니까? 동일한 .py 파일에 함수가 있습니까? –