Size: a a a

Django [ru] #STAY HOME

2020 January 24

BB

Baktiyar Bekbergen in Django [ru] #STAY HOME
Егор Горлодить
Еще раз здрасьте, не понимаю как правильно pk передать для перехода на страницу, где создавался комментарий
path(r'^post/<int:pk>', views.BlogDetail.as_view(), name='blog')
источник

BB

Baktiyar Bekbergen in Django [ru] #STAY HOME
url: blog pk
источник

h

hunnidolla in Django [ru] #STAY HOME
переделать под 2+ ? r' убери
источник

ЕГ

Егор Горлодить in Django [ru] #STAY HOME
Baktiyar Bekbergen
url: blog pk
не до конца понял, это к чему именно?
источник

BB

Baktiyar Bekbergen in Django [ru] #STAY HOME
Baktiyar Bekbergen
url: blog pk
Если с темплейта вызывать
источник

MI

Marat Idrísov in Django [ru] #STAY HOME
class Device(models.Models):
   name = models.Charfield(max_length=100)
   type = models.Charfield(max_length=100)

class Log(models.Modles):
  device = models.ForeignKey(Device, on_delete=models.CASCADE)
Условный пример. Как мне закинуть  в Log.device несколько Device? Из документации не понял
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Marat Idrísov
class Device(models.Models):
   name = models.Charfield(max_length=100)
   type = models.Charfield(max_length=100)

class Log(models.Modles):
  device = models.ForeignKey(Device, on_delete=models.CASCADE)
Условный пример. Как мне закинуть  в Log.device несколько Device? Из документации не понял
при такой структуре таблиц, привязать к одному объекту Log несколько device, - никак
источник

BB

Baktiyar Bekbergen in Django [ru] #STAY HOME
for data in logs_data_set:
devices.log_related_name.create(**data)
источник
2020 January 25

A

A. A. in Django [ru] #STAY HOME
guys, help please :) не могу понять почему не отрабатывает redirect()
задача: форма с пост запросом, если корректно заполнена, то редирект на нее же саму с доп параметром, чтобы понять что она заполнена и в шаблоне уже вывод - спасибо, сэр

код из views.py
def student_add(request):
   submitted = False

   if request.method == 'POST':
       form = forms.StudentAddForm(request.POST)
       if form.is_valid():
           cd = form.cleaned_data
           #assert True
           return redirect('student_add', submitted=True, permanent=True) #'student_add?submitted=True/')
   else:
       form = forms.StudentAddForm()
       if 'submitted' in request.GET:
           submitted = True

   context = {
       'submitted': submitted,
       'form': form
   }

   return render(request, 'students/student_add.html', context)

в urls.py student_add корректно написан:
urlpatterns = [...
   path('student_add', views.student_add, name='student_add')
   ]
форма заполняется, но при ее отправке, генерится ошибка

NoReverseMatch at /students/student_add

Reverse for 'student_add' not found. 'student_add' is not a valid view function or pattern name.

Request Method:   POST
Request URL:   http://127.0.0.1:8000/students/student_add
Django Version:   3.0.2
Exception Type:   NoReverseMatch
Exception Value:  

Reverse for 'student_add' not found. 'student_add' is not a valid view function or pattern name.
Exception Location:   M:\projects\marengue\venv\lib\site-packages\django\urls\resolvers.py in _reverse_with_prefix, line 677

При этом если передаю урл не по тэгу (то что закомментированно), то все норм отрабатывает. В чем загвоздка?
источник

NK

Nikolay Kolesnik in Django [ru] #STAY HOME
ответил в личку
источник

NK

Nikolay Kolesnik in Django [ru] #STAY HOME
path('student_add', views.student_add, name='student_add')
предпологаю что проблема тут с первым агрументом, должен быть add/ вместо ‘student_add’
и еще проблема в
redirect('student_add', submitted=True, permanent=True)
посоветовал использовать
return HttpResponseRedirect(reverse('student_add'))
если у кого-то будут доп советы - отписывайте, весь код не вижу, могу что-то упустить
источник

OC

Oleg Crabolog in Django [ru] #STAY HOME
path('student_add'
источник

OC

Oleg Crabolog in Django [ru] #STAY HOME
в конце разве не полагается слеш?
источник

A

A. A. in Django [ru] #STAY HOME
ну как я понимаю, это в зависимости того как я пути формирую? я конечно по уродски их могу формировать, я же еще учусь, но разве это влияет принципиально на reverse() метод?
источник

OC

Oleg Crabolog in Django [ru] #STAY HOME
это принципиально для файла urls
источник

A

A. A. in Django [ru] #STAY HOME
раньше, файл урлс не выебывался что слэша нет))
но попробовал со слэшом, попробовал заменить redirect на HttpResponseRedirect(reverse()) — не помогает, все равно ругается в reverse, что не находит паттерн
источник

OC

Oleg Crabolog in Django [ru] #STAY HOME
считаю нужно показывать урлс и вьюху
источник

A

A. A. in Django [ru] #STAY HOME
Oleg Crabolog
считаю нужно показывать урлс и вьюху
какую инфу вообще стоит добавить? я вроде в пост самое главное включил, но на всякий сейчас залью на dpaste.de
источник

OC

Oleg Crabolog in Django [ru] #STAY HOME
хз
источник

A

A. A. in Django [ru] #STAY HOME
Oleg Crabolog
считаю нужно показывать урлс и вьюху
источник