Django - 使用传入的参数预填充 ModelForm url

Django - Pre-populating a ModelForm with parameters passed in url

我正在尝试使用来自 url 的数据预填充 ModelForm 但收到以下错误消息:

Reverse for 'create_entry' with arguments '(1, datetime.date(2019, 11, 1))' not found. 2 pattern(s) tried: ['create_entry/<int:habit_id>/(?P<selected_day>\d{4}-\d{2}-\d{2})/$', 'create_entry/$']

注意Habit是一个外键。如果我从 url 中取出 habit.id,错误就会消失,但不会预先填充表单,并且 url 未正确声明。

我的问题是:我需要更改什么?模型形式? urls ?观点 ?

感谢您的帮助!

相关的 url(来自 habitap 命名空间):

re_path(r'^create_entry/<int:habit_id>/(?P<selected_day>\d{4}-\d{2}-\d{2})/$', create_entry, name='create_entry')


问题是 url,它应该只使用正则表达式来声明:

re_path(r'^create_entry/(?P<habit_id>\d+)/(?P<selected_day>\d{4}-\d{2}-\d{2})/$', create_entry, name='create_entry')