相关疑难解决方法(0)

如何从Django中的inlineadmin获取当前模型实例

formfield_for_manytomanydjango文档中使用给定的.但在该函数内部,我需要获取正在编辑的当前父对象.

def formfield_for_manytomany(self, db_field, request, **kwargs):
    if db_field.name == "car":
        kwargs["queryset"] = Cars.objects.filter(owner=person)
    return super(myModel, self).formfield_for_manytomany(db_field, request, **kwargs)
Run Code Online (Sandbox Code Playgroud)

如何让被编辑的人?

python django django-admin

20
推荐指数
2
解决办法
1万
查看次数

Django 管理页面:通过多个模型选择而不是原始文本自定义 ID 的字典 (JSONField)

我有一个模型,其中一个字段是postgres.fields.JSONField

将要存储在那里的 Json 是引用数据库中其他项目(可能的关系/属性)的 ID 变量字典。

请允许我更具体:

基本上,我正在尝试创建一个折扣系统,其中某些折扣适用于某些产品。JSON 字段包含了解哪些产品可以获得折扣的约束。

例如:

  • 如果我想对属于“饮料”类别的所有产品应用 50% 的折扣,并且“饮料”类别5在数据库中具有 id ,则折扣记录将如下所示:

    discount_type='percent'
    discount='0.5'
    filter_by={
        'category': [5]
    }
    
    Run Code Online (Sandbox Code Playgroud)
  • 如果我想$ 20 off适用于所有产品的“饮料”类别由制造,比方说,可口可乐,该filter_by词典将如下所示:

    discount_type='fixed amount'
    discount='20'
    filter_by={
        'category': [5],
        'manufacturer': [2]   # Assuming coca-cola is the Manufacturer 
                              # with id==2 in the 'Manufacturers'
                              # table of the database (NOTE: this is 
                              # needed since CocaCola manufactures
                              # products besides "Beverages")
    }
    
    Run Code Online (Sandbox Code Playgroud)
  • 如果我想对特定产品(比方说产品id3)应用 25% 的折扣,字典将如下所示:

    discount_type='percent' …
    Run Code Online (Sandbox Code Playgroud)

python django customization django-admin django-jsonfield

4
推荐指数
1
解决办法
2523
查看次数