Skip to content

Commit eed485a

Browse files
committed
refactor: optimize get_object_or_404 calls for Answered_Survey by filtering with engagement
1 parent edf7a74 commit eed485a

1 file changed

Lines changed: 4 additions & 4 deletions

File tree

dojo/survey/views.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
@user_is_authorized(Engagement, Permissions.Engagement_Edit, "eid")
5858
def delete_engagement_survey(request, eid, sid):
5959
engagement = get_object_or_404(Engagement, id=eid)
60-
survey = get_object_or_404(Answered_Survey, id=sid)
60+
survey = get_object_or_404(Answered_Survey.objects.filter(engagement=engagement), id=sid)
6161
questions = get_answered_questions(survey=survey, read_only=True)
6262
form = Delete_Questionnaire_Form(instance=survey)
6363

@@ -96,8 +96,8 @@ def delete_engagement_survey(request, eid, sid):
9696

9797

9898
def answer_questionnaire(request, eid, sid):
99-
survey = get_object_or_404(Answered_Survey, id=sid)
10099
engagement = get_object_or_404(Engagement, id=eid)
100+
survey = get_object_or_404(Answered_Survey.objects.filter(engagement=engagement), id=sid)
101101
system_settings = System_Settings.objects.all()[0]
102102

103103
if not system_settings.allow_anonymous_survey_repsonse:
@@ -162,8 +162,8 @@ def answer_questionnaire(request, eid, sid):
162162

163163
@user_is_authorized(Engagement, Permissions.Engagement_Edit, "eid")
164164
def assign_questionnaire(request, eid, sid):
165-
survey = get_object_or_404(Answered_Survey, id=sid)
166165
engagement = get_object_or_404(Engagement, id=eid)
166+
survey = get_object_or_404(Answered_Survey.objects.filter(engagement=engagement), id=sid)
167167

168168
form = AssignUserForm(instance=survey)
169169
if request.method == "POST":
@@ -183,8 +183,8 @@ def assign_questionnaire(request, eid, sid):
183183

184184
@user_is_authorized(Engagement, Permissions.Engagement_View, "eid")
185185
def view_questionnaire(request, eid, sid):
186-
survey = get_object_or_404(Answered_Survey, id=sid)
187186
engagement = get_object_or_404(Engagement, id=eid)
187+
survey = get_object_or_404(Answered_Survey.objects.filter(engagement=engagement), id=sid)
188188
questions = get_answered_questions(survey=survey, read_only=True)
189189

190190
add_breadcrumb(

0 commit comments

Comments
 (0)