帮我写一段django代码,实现前端填入学生姓名、学号,与模型相连,模型中属性有下拉菜单
时间: 2024-02-24 13:00:13 浏览: 86
好的,下面是一段Django代码,实现前端填入学生姓名、学号,与模型相连,模型中属性有下拉菜单:
1. 首先,在 `models.py` 文件中定义模型,例如:
```python
class Student(models.Model):
name = models.CharField(max_length=50)
student_id = models.CharField(max_length=10)
gender_choices = (
('M', 'Male'),
('F', 'Female'),
)
gender = models.CharField(max_length=1, choices=gender_choices)
# 其他属性
```
2. 在 `forms.py` 文件中定义表单,例如:
```python
class StudentForm(forms.ModelForm):
class Meta:
model = Student
fields = ['name', 'student_id', 'gender', ...] # 其他属性
```
3. 在 `views.py` 文件中定义视图函数,例如:
```python
from django.shortcuts import render
from .forms import StudentForm
def add_student(request):
if request.method == 'POST':
form = StudentForm(request.POST)
if form.is_valid():
student = form.save()
# 保存学生信息到数据库
return render(request, 'success.html', {'student': student})
else:
form = StudentForm()
return render(request, 'add_student.html', {'form': form})
```
4. 在 `add_student.html` 文件中定义表单的HTML模板,例如:
```html
<form method="POST">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Submit</button>
</form>
```
这段代码将会在前端中显示一个表单,包括学生姓名、学号和性别三个属性,其中性别属性使用下拉菜单实现。当用户提交表单后,将会调用 `add_student` 视图函数,将数据保存到数据库中,并在前端显示成功页面。
阅读全文