【问题标题】:Reverse for 'form_detail' not found. 'form_detail' is not a valid view function or pattern name未找到“form_detail”的反向。 “form_detail”不是有效的视图函数或模式名称
【发布时间】:2023-04-10 10:16:01
【问题描述】:

我正在尝试重定向到另一个视图,该视图转到一个随机生成的 URL,但 Django 不知道要呈现什么。

我不确定我的网址有什么问题。我认为我做得对,但 Django 不同意。我做错了什么?

未找到“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")
]

【问题讨论】:

    标签: django


    【解决方案1】:

    我可以看到您在 app.urls 中,而不是在主体 project.urls 中 这意味着您需要为 app.urls 提供一个命名空间,我们称之为“请求” 所以你需要使用'request:form_detail'

    【讨论】:

    • 这是一个简单的修复。谢谢!
    猜你喜欢
    • 2018-11-19
    • 2019-04-06
    • 2019-08-13
    • 2019-11-04
    • 2021-04-21
    • 2018-05-20
    • 2018-07-01
    • 2021-11-06
    • 2019-05-19
    相关资源
    最近更新 更多