缺少1个必需的位置参数:“request”

2024-10-04 05:22:35 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我的视图.py在

class categAdmin(admin.ModelAdmin):

    change_form_template = 'category_forms.html'
    list_display = ['title']
    model = Category
    fields = ['status','title','category_post','body', 'photo', 
    'url','slider','Gallery','lists','pk_tree','video','maps']

    # def render_change_form(self, request, context,  **kwargs):
    #     post = Post.objects.all()
    #     context['eve'] = post
    #     return super(categAdmin,self).render_change_form(request, context, **kwargs)

    def item_add(request, self, post_id):
        tree = post_id
        return self.add_view(request, extra_context={'tree': tree})

我收到错误项_add()缺少1个必需的位置参数:“request”


Tags: selfformaddtreereturntitlerequestdef
2条回答

始终记住,方法是绑定到对象的,无论何时调用方法,python都会隐式地将自参数(调用方法的对象)传递给方法调用,在您的示例中:

class CategAdmin:
      def item_add(self, request, post_id):
           pass

将是签名格式,请注意self对象是方法签名中的第一个参数。所以当你这么做的时候

^{pr2}$

另一个反馈是改进您的编码风格,即遵循一些惯例,如总是以大写字母开头的类名,为类、方法和变量提供有意义的名称。 这会使代码更具可读性,并且通过此调试将更快。在

干杯!在

您需要交换selfrequest参数。在

def item_add(self, request, post_id):
    tree = post_id
    ...

相关问题 更多 >