Мне нужны некоторые рекомендации по внедрению наилучшей практики:
У меня есть сценарий, в котором я создаю приложение, но если оно соответствует определенной «категории» или «локали» и хочу перенаправить егоПерейдите на страницу между прочим, просто идите по обычному маршруту.
Вот мой простой views.py
if form.is_valid():
...
kwargs = {'project_id':project_id, 'categories':request.POST['categories'], 'locale':request.POST['locale']}
process_se(request, **kwargs)
return HttpResponseRedirect(obj.next_url)
Вот что у меня есть в моем файле models.py, но, похоже,очень противоречивоЕсть ли лучший способ обработать этот запрос?
def process_se(self, request, **kwargs):
if "All" or "Sweden" in kwargs['locale']:
if "Technology" or "Internet" in kwargs['categories']:
next_url = request.build_absolute_uri(reverse('project_new_se', kwargs={'project_id': self.id}))
else:
next_url = request.build_absolute_uri(reverse('project_new_step2', kwargs={'project_id': self.id}))
self.next_url = next_url
ОБНОВЛЕНИЯ:
Я использую forms.ModelForm
, categories
и locales
- это ManyToManyField
, которые я моделировалa for в оболочке и, похоже, по-прежнему не дает результата
Вот вывод cleaned_data
f.cleaned_data
{'locale': [<Locale: Sweden>, <Locale: All>], 'categories': [<Category: Technology>, <Category: Internet>]}
Хотя выполнение этого для полей в форме, кажется, прекрасно отрисовывается на основе вашего решения