写一段代码:python django html 将药品数据库表的数据存入处方数据库表,在html页面操作过程
时间: 2024-06-09 21:08:46 浏览: 116
这是一个比较复杂的操作,需要多个步骤。下面是一个简单的示例代码,供您参考:
1. 在 Django 中定义药品数据库表和处方数据库表:
```python
from django.db import models
class Drug(models.Model):
name = models.CharField(max_length=100)
description = models.TextField()
class Prescription(models.Model):
patient_name = models.CharField(max_length=100)
drugs = models.ManyToManyField(Drug)
```
2. 在 Django 中创建视图函数,用于处理 HTML 页面的请求:
```python
from django.shortcuts import render
from .models import Drug, Prescription
def prescription_view(request):
drugs = Drug.objects.all()
if request.method == 'POST':
patient_name = request.POST.get('patient_name')
drug_ids = request.POST.getlist('drug_ids')
prescription = Prescription.objects.create(patient_name=patient_name)
prescription.drugs.set(drug_ids)
prescription.save()
return render(request, 'prescription.html', {'drugs': drugs})
```
3. 在 HTML 页面中添加表单,用于选择药品和输入病人姓名:
```html
<form method="post">
{% csrf_token %}
<label for="patient_name">Patient Name:</label>
<input type="text" id="patient_name" name="patient_name"><br><br>
<label for="drugs">Select Drugs:</label>
<select multiple id="drugs" name="drug_ids">
{% for drug in drugs %}
<option value="{{ drug.id }}">{{ drug.name }}</option>
{% endfor %}
</select><br><br>
<input type="submit" value="Submit">
</form>
```
4. 在 Django 中创建 URL 路由,将视图函数和 HTML 页面连接起来:
```python
from django.urls import path
from .views import prescription_view
urlpatterns = [
path('prescription/', prescription_view, name='prescription'),
]
```
这样,当用户访问 `/prescription/` 路径时,就会显示一个 HTML 页面,其中包含一个表单,用户可以选择药品和输入病人姓名。当用户提交表单时,视图函数会将所选药品和病人姓名保存到处方数据库表中。
阅读全文