Update routes/onboarding.py
Browse files- routes/onboarding.py +11 -2
routes/onboarding.py
CHANGED
@@ -88,14 +88,23 @@ async def update_onboarding_question(payload: UpdateOnboardingQuestion = Body(..
|
|
88 |
async def add_onboarding_question(payload: CreateOnboardingQuestion = Body(...)):
|
89 |
"""
|
90 |
Adiciona uma nova pergunta de onboarding.
|
91 |
-
|
92 |
"""
|
93 |
try:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
94 |
new_question = {
|
95 |
"title": payload.title,
|
96 |
"question_type": payload.question_type,
|
97 |
"optional": payload.optional,
|
98 |
-
"options":
|
99 |
"target_type": payload.target_type
|
100 |
}
|
101 |
|
|
|
88 |
async def add_onboarding_question(payload: CreateOnboardingQuestion = Body(...)):
|
89 |
"""
|
90 |
Adiciona uma nova pergunta de onboarding.
|
91 |
+
Trata casos onde `options` vem como `{}` ou string.
|
92 |
"""
|
93 |
try:
|
94 |
+
# Tratamento de `options`
|
95 |
+
options = payload.options
|
96 |
+
|
97 |
+
if isinstance(options, dict) and not options:
|
98 |
+
options = None
|
99 |
+
elif isinstance(options, str):
|
100 |
+
# Transforma string simples em lista com um item capitalizado
|
101 |
+
options = [options.strip().capitalize()]
|
102 |
+
|
103 |
new_question = {
|
104 |
"title": payload.title,
|
105 |
"question_type": payload.question_type,
|
106 |
"optional": payload.optional,
|
107 |
+
"options": options,
|
108 |
"target_type": payload.target_type
|
109 |
}
|
110 |
|