如何在 Django 中捕获包含 yyyy-mm-dd 的 url。所以就像 www.mydomain.com/2011-02-12。我试过了:
url(r'^(?P<date>\d{4}-\d{2}-\d{2})/$', views.index, name='index'),
但是,服务器说找不到页面。
最佳答案
在 Django 3.0.5 中,我使用以下 urls.py 完成了此操作
from django.urls import path, register_converter
from datetime import datetime
from . import views
class DateConverter:
regex = '\d{4}-\d{2}-\d{2}'
def to_python(self, value):
return datetime.strptime(value, '%Y-%m-%d')
def to_url(self, value):
return value
register_converter(DateConverter, 'yyyy')
urlpatterns = [
path('', views.index, name='index'),
path('date/<yyyy:date>/', views.date, name='date'),
]
关于python - 捕获 yyyy-mm-dd 日期的 Django url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41212865/