在 Django 中,可以使用 ModelChoiceField 来创建一个下拉框,然后将某张表的一个字段的值用作选项。

首先,在你的 Django 项目中的 models.py 文件中定义你的模型类,例如:

from django.db import models

class YourModel(models.Model):
    your_field = models.CharField(max_length=100)

接下来,在 forms.py 文件中创建一个表单类,使用 ModelChoiceField 来定义下拉框,并将该字段与你的模型类关联起来,例如:

from django import forms
from .models import YourModel

class YourForm(forms.Form):
    your_field = forms.ModelChoiceField(queryset=YourModel.objects.values_list('your_field', flat=True))

在上面的代码中,queryset 参数用于指定下拉框的选项,YourModel.objects.values_list('your_field', flat=True) 将返回你的模型类中 your_field 字段的值列表。

最后,在你的视图函数中,将表单传递给模板,并在模板中渲染该表单,例如:

from django.shortcuts import render
from .forms import YourForm

def your_view(request):
    form = YourForm()
    return render(request, 'your_template.html', {'form': form})

然后,在 your_template.html 文件中使用 Django 模板语言来渲染表单,例如:

<form method="post">
  {% csrf_token %}
  {{ form.as_p }}
  <input type="submit" value="Submit">
</form>

这样,你就可以在表单中看到一个下拉框,其中的选项是你的模型类中 your_field 字段的值。

Django 下拉框:使用模型字段值作为选项

原文地址: https://www.cveoy.top/t/topic/eH0o 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录