相关疑难解决方法(0)

位置参数vs关键字参数

基于

位置参数是一个名称,后面没有等号(=)和默认值.

关键字参数后跟一个等号和一个给出其默认值的表达式.

def rectangleArea(width, height):
    return width * height

print rectangleArea(width=1, height=2)
Run Code Online (Sandbox Code Playgroud)

提问 >我假定这两个widthheight的位置参数.那么为什么我们也可以用关键字真实参数语法来调用呢?

python

63
推荐指数
4
解决办法
10万
查看次数

在保存 Django 期间将参数从部分表单传递到模型

我有一个包含许多字段的模型,我正在为其创建两个部分表单

#model
class Line_Settings(models.Model):
....
    line = models.ForeignKey(Line)
    All = models.BooleanField(default=False)
    Busy = models.BooleanField(default=False)
    MOH = models.CharField(max_length=100, blank=True, null=True)
    PLAR = models.CharField(max_length=100, blank=True, null=True)
....

    def save(self, commit = True, *args, **kwargs):
       ....
#Partial model form1
class General(ModelForm):
    class Meta:
        model = Line_Settings
        fields = ('MOH','PLAR')
#Partial model form2        
class Common(ModelForm):
    class Meta:
        model = Line_Settings
        fields = ('All','Busy') 
Run Code Online (Sandbox Code Playgroud)

我已经覆盖了 Line_Settings 模型的保存以执行其他逻辑。

我需要能够将一些参数传递给覆盖的 save 方法以在我的逻辑中使用。

在我的视图中,我用 post 数据填充了两个部分表单,并且可以调用 save。

call_forwards = Common(request.POST, instance=line_settings)
general = General(request.POST, instance=line_settings)
Run Code Online (Sandbox Code Playgroud)

我需要像这样将参数传递给保存:

call_forwards.save(parameter="value")
general.save(parameter="value") …
Run Code Online (Sandbox Code Playgroud)

django django-models django-forms

5
推荐指数
1
解决办法
4434
查看次数

标签 统计

django ×1

django-forms ×1

django-models ×1

python ×1