【问题标题】:Python/Django: as_view() takes 1 positional argument but 2 were givenPython/Django:as_view() 接受 1 个位置参数,但给出了 2 个
【发布时间】:2016-08-08 12:10:29
【问题描述】:

我在我的 Django 项目中编写了一个 as_view(),其中给出了两个位置参数来提交表单。渲染模板时会引发类型错误: as_view() 接受 1 个位置参数,但给出了 2 个。我会很感激帮助我解决这个问题。

Views.py:

class AuctionView(LoginRequiredMixin, MultipleFormsView):
    template_name = 'loggedin_load/active_deals.html'
    form_classes = {'accept_bid': AuctionForm,
                'accepted': AcceptedForm}
    success_url = '/live_bids/'


    @method_decorator(user_passes_test(not_in_company_group, login_url='/login/'))
    def dispatch(self, *args, **kwargs):
        return super(AuctionView, self).dispatch(*args, **kwargs)


    def accept_bid_form_valid(self, request, post_id, bid_id, form):

        accept_bid = form.save(commit=False)
        accept_bid.bid = bid
        accept_bid.post = post
        accept_bid.post_owner = request.user
        accept_bid.save()
        form.save()
        return form.accept_bid(self.request, redirect_url=self.get_success_url())

    def accepted_form_valid(self, form):
        accepted = form1.save(commit=False)
        return form.accepted(self.request, user, self.get_success_url())

urls.py:

url(r'^post/(?P<post_id>[\w-]+)/bid/(?P<bid_id>[\w-]+)/$', AuctionView.as_view, name='accept_bid'),

【问题讨论】:

    标签: django arguments django-views django-urls


    【解决方案1】:
    url(r'^post/(?P<post_id>[\w-]+)/bid/(?P<bid_id>[\w-]+)/$', AuctionView.as_view(), name='accept_bid'),
    

    【讨论】:

    • 我收到一个错误:'NoneType' 对象不可调用。你能帮我看看这是怎么回事吗!
    • 当然可以。请善意发布一个带有完整错误回溯的新问题
    猜你喜欢
    • 2016-10-13
    • 2020-12-31
    • 2018-06-24
    • 2019-04-06
    • 2022-01-02
    • 2019-04-20
    • 2018-11-15
    • 2014-07-19
    • 2016-08-09
    相关资源
    最近更新 更多