【发布时间】:2021-02-05 00:13:08
【问题描述】:
我希望在 modelForm 中有额外的字段。从这个额外的字段中,我想在保存时将值传递给模型中的字段。这是我想要得到的例子
希望在random name 字段中生成名称,并以name 保存到数据库中
models.py
from django.db import models
class Test2App(models.Model):
name = models.CharField(max_length=100)
def __str__(self):
return self.name
forms.py
from django import forms
from .models import test2App
class TestForm(forms.ModelForm):
class Meta:
model = Test2App
fields = ['name']
Views.py
def add_name(request):
if request.method == 'POST':
form = TestForm(request.POST)
if form.is_valid():
form.save()
return redirect('test_name')
else:
form = TestForm()
return render(request, 'test/add.html', {'form': form})
html
<form method="post">
{% csrf_token %}
<label for="name">Random Name</label>
<button>Generate</button>
<input id="name" name="name_test">
{{ form}}
<input type="submit" value="Submit">
</form>
【问题讨论】: