簡體   English   中英

如何在保存之前為django表單的字段賦值?

[英]how to assign value to django form's field before saving?

如果我有這樣的模型和形式:

class Test(models.Model):
    name = Charfield()
    nickname = CharField()

class getNickname(forms.ModelForm):
    class Meta:
    model = Test;
    exclude = ['nickname'];

昵稱將是使用函數隨機生成的名稱。

def msms():
    return randomName;

def getNick(request):
    if request.method = 'POST':
        form = getNickname(request.POST);
        if form.is_valid():
            form.nickname = msms(); <--
            nickname = form.save();

當我打電話給msms()時,它給了我一個錯誤。 使用函數更改“昵稱”的正確方法是什么?

在模型上做它。

    if form.is_valid():
        nickname = form.save(commit=False)
        nickname.nickname = msms()
        nickname.save()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM