Django - 类型错误在饲料()缺少1需要的位置参数:'ID'
我想添加评论到我的项目,我有这个错误:feeds() missing 1 required positional argument: 'id'
。这是我的代码。Django - 类型错误在饲料()缺少1需要的位置参数:'ID'
views.py
@login_required
def feeds(request, id):
feeds_list = Feed.objects.all()
feed = get_object_or_404(Feed, id=id)
users = User.objects.filter(is_active=True)
if request.method == 'POST':
# Komentarz został opublikowany.
feed_form = FeedForm(request.POST)
if feed_form.is_valid():
# Utworzenie obiektu Comment, ale jeszcze nie zapisujemy go w bazie danych.
new_feed = feed_form.save(commit=False)
new_feed.user = request.user
new_feed.date = timezone.now
# Zapisanie komentarza w bazie danych.
new_feed.save()
else:
feed_form = FeedForm()
context = {'section': feeds,
'users': users,
'feeds_list': feeds_list,
'feed_form': feed_form}
return render(request, 'feed/list.html', context)
我认为这是这里的问题:feed = get_object_or_404(Feed, id=id)
,但我不知道如何解决它。
感谢您的帮助。
编辑: urls.py
from django.contrib.auth.urls import url
from . import views
app_name = 'feedApp'
urlpatterns = [
url(r'^$', views.feeds, name='feeds'),
url(r'^feed/new$', views.post_new, name='post_new'),
url(r'^feed/(?P<id>[0-9]+)/$', views.feed, name='post_detail'),
# url(r'^feed/(?P<id>[0-9]+)/comment$',
# views.comment_feed,
# name='comment_feed'),
url(r'^feed/(?P<id>[0-9]+)/delete/$',
views.feed_delete,
name='feed_delete'),
]
根据您的urls
您需要添加所需的参数id
它。 编辑您的网址:
url(r'^(?P<id>[0-9]+)$', views.feeds, name='feeds'),
谢谢。它正在工作 – jestembotem
您还没有views.feeds
URL中使用 'ID' 作为关键字ARGS。 添加url(r'^feed/(?P<id>[0-9]+)/$', views.feeds,),
您的答案中的网址适用于其他某些功能'views.feed'。它已经在url中有'id'参数。 – badiya
贴'urls.py' –
feeds'预计,鉴于''id'存在于网址。您的端点应该是这样的 - localhost:8000/ –
如果在完全错误跟踪后发生错误 – badiya