Реверс для 'form_detail' не найден. 'form_detail' не является допустимой функцией представления или именем шаблона - PullRequest
0 голосов
/ 20 марта 2019

Я пытаюсь перенаправить на другое представление, которое идет по случайно сгенерированному URL, но Django не может не знать, что отображать.

Я не уверен, что не так с моими URL в этом. Я думаю, что сделал все правильно, но Джанго не согласен. Что я делаю не так?

Реверс для 'form_detail' не найден. 'form_detail' не является допустимым представлением имя функции или шаблона.

Views.py

def index(request):
    randomUrl = str(uuid.uuid4())
    return redirect("form_detail", random_url=randomUrl)


def form_detail(request, random_url):
    template = "faq.html"
    context = {}
    form_detail = random_url
    context["form_detail"] = form_detail
    stripeUID = str(uuid.uuid4())
    payment = stripe.checkout.Session.create(
  success_url="https://myUrl.com/accepted",
  cancel_url="https://myUrl.com/cancel",
  payment_method_types=["card"],
  client_reference_id= stripeUID,
  line_items=[
    {
      "amount": 2000242,
      "quantity": 1,
      "name": "Expensive item",
      "currency": "usd",
    }
  ]
)   
    context = payment.id
    return render(request, template, context)

Приложение urls.py

from . import views
app_name = 'request'

urlpatterns = [
    path('', views.index, name='index'),
    path('form-detail/(?P<random_url>[-\w]+)/$', views.form_detail, name="form_detail")
]

1 Ответ

1 голос
/ 20 марта 2019

Я вижу, что вы находитесь внутри app.urls, а не в основном project.urls. Это означает, что вам нужно предоставить пространство имен для app.urls, назовем его «request», поэтому вам нужно использовать «request: form_detail»«

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...