Как взять значения параметров из URL в Django и дать форму - PullRequest
0 голосов
/ 01 мая 2020

models.py

class Prueba(models.Model): #collection name

    cantidad = models.PositiveIntegerField(default=1)

    def __str__(self):
        return  str(self.cantidad)

urls.py

from django.urls import path

from . import views

app_name = "home_app"

urlpatterns = [

path(
        'confirmar_viaje/',
        views.SampleView.as_view(), 
        name='userviajes',
    ),
]

View.py

class SampleView(CreateView):
    model=Prueba
    template_name='testpag.html'
    form_class=TestForm
    success_url = '/'

   def init_page(request):
        print(request.GET)
        pasajeros = self.request.form['pasajeros']
        print(pasajeros)

forms.py

class TestForm(forms.ModelForm):

    class Meta:
        model=Prueba
        fields=['cantidad']

Я использую DetailView, внутри html есть форма (html). Результат - / test /? Pasajeros = 99

Я хочу взять из параметров de url. pasajeros = 99 и заполните текстовое поле из формы.

В коде нет ошибок, но мне нужно восстановить параметр или параметры.

Любая идея?

Ответы [ 2 ]

0 голосов
/ 02 мая 2020

Это вызов кода CreateView, чем я хочу заполнить


<form action="/confirmar_viaje/" method="get">
              <p>name: <input type="text" name="fullname" size="40" value={{user.username}} disabled></p>
   <p>Numeber: <input type="number" name="pasajeros" ></p>
              <p>
                <input type="submit" value="Submit">
              </p>

          </form>

Почему я делаю это, потому что эта часть кода находится внутри DetailView, и никакие его возможности не имеют двух представлений, указывающих на один адрес, так что мое решение это отправка данных через GET, а другой View захватывает его параметры из URL-адреса de и заполняет автоматизированные c мои поля, так что у меня есть два представления с его собственным URL.

Это код, который получает URL

<div>
      <form method="post">{% csrf_token %}
          {{ form.as_p }}
          <button type="submit">Registrar</button>
      </form>
  </div>
</div>
0 голосов
/ 01 мая 2020

в вашей форме, например, в коде html

<a href = "{% url 'home_app:userviajes'%}"> link to your forms </a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...