django xadmin后台修改数据库的时候,我们想做其他关联性的动作,并且想区分是修改数据还是新增数据的时候,这个时候需要在xadmin.py里面学一个save_models的自定义函数,demo如下

class EducationLevelAdmin(object):
    list_display = ("education_name", "create_time", "update_time")  # 在后台列表下显示的字段

    # 重写后台admin中新增对象的时候保存的方法
    def save_models(self):
        path = self.request.path
        action = path.split("/")[-2]
        obj = self.new_obj
        if action == "add":
            # 新的对象
            # 可以在这里面写些逻辑
            obj.education_id = base_tools.create_id()
            obj.update_time = datetime.now()
            obj.create_time = datetime.now()
        elif action == "update":
            obj.update_time = datetime.now()
        else:
            pass
        # 保存该对象
        obj.save()


原创文章,转载请注明出处:http://124.221.219.47/article/xadmin-modelaction/