我有一个UserProfile模型,如果他们愿意,我想让人们更新。
views.py
from django.views.generic.edit import CreateView, UpdateView
class UserProfileUpdateView(UpdateView):
model = UserProfile
form_class = UserProfileForm
template_name = "preferences.html"
success_url = "/profile/"
def get_context_data(self, *args, **kwargs):
context = super(UserProfileUpdateView, self).get_context_data(*args, **kwargs)
return context
urls.py
from profiles import views
from profiles.views import UserProfileCreateView, UserProfileUpdateView
urlpatterns = [url(r'^profile/(?P<pk>\d+)$/edit', UserProfileUpdateView.as_view(), name='update_profile'),]
现在我的问题是,当我尝试去http://127.0.0.1:8000/profile/someusername/edit时,我得到了404.我不清楚urlpatterns中pk究竟发生了什么。我应该使用什么网址格式来查看我可以更新个人资料的页面?或者这里有什么问题吗?
我
答案 0 :(得分:1)
你的正则表达式中间有一个$
,这没有任何意义,因为那是终结符。删除它。