get_deleted_objects() takes 3 positional arguments but 5 were given

本文详细介绍了如何解决Django的Xadmin中出现的'get_deleted_objects() takes 3 positional arguments but 5 were given'错误。通过修改Xadmin的delete.py文件中的参数传递方式,可以有效解决此问题。

django 的 xadmin 报错 get_deleted_objects() takes 3 positional arguments but 5 were given

 (self.deleted_objects, model_count, self.perms_needed, self.protected) = get_deleted_objects(
            [self.obj], self.opts, self.request.user, self.admin_site, using)
  • 改成
      (self.deleted_objects, model_count, self.perms_needed, self.protected) = get_deleted_objects(
            [self.obj], self.request.user, self.admin_site)
在Java中,如果你想要从一个方法中移除自带的 `is_deleted = 0` 条件,首先你需要确定这个条件是在哪里被加入的。通常,这样的条件可能是由以下几个地方引入的: 1. 数据库查询时加入的条件,比如在Hibernate或者MyBatis等ORM框架中,可能会有默认的查询过滤器。 2. 在业务逻辑中,例如在获取数据的方法中硬编码了这个条件。 3. 在某个抽象层或者父类中定义了默认的行为,子类继承了这个行为。 针对不同的情况,有不同的处理方法: 1. 如果是ORM框架中自带的默认查询条件,你可以通过覆盖配置或者使用特定的注解来忽略这个条件。例如,在Hibernate中,你可以使用`@FilterDef`和`@Filters`注解来定义过滤器,并在查询时不激活它们。 2. 如果是在业务逻辑代码中硬编码的,你可以直接删除或者注释掉相关的代码行。 3. 如果是在抽象层定义的,你可以重写方法来移除这个条件,或者在子类中覆盖父类的行为。 由于你提到了“getOne”,这听起来像是一个获取单个实体的方法。假设这个方法是从某个基础类继承来的,你可以这样重写这个方法来移除条件: ```java public class MyService extends BaseService { @Override public MyEntity getOne(int id) { // 覆盖掉父类中的查询逻辑 Example example = Example.create(new MyEntity()); // 不添加is_deleted = 0的条件 MyEntity result = myEntityRepository.findOne(example); return result; } } ``` 在这个例子中,我们假设`BaseService`有一个`getOne`方法,它默认会添加`is_deleted = 0`的条件。在我们的`MyService`中,我们重写了`getOne`方法,并且没有添加这个条件。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值