django项目中为我的高血压网站用建一个后台admin系统,后台导航栏其中一项为药品信息管理页面对mysql库drug_db中的drug_list表(id drug_name)进行增删改查操作,
时间: 2024-05-04 12:21:38 浏览: 72
好的,你可以按照以下步骤来实现:
1. 在你的 Django 项目中创建一个名为 "drug" 的 Django App。
2. 在 drug App 的 models.py 文件中定义 Drug 模型类来映射 drug_list 表:
```python
from django.db import models
class Drug(models.Model):
drug_name = models.CharField(max_length=50)
def __str__(self):
return self.drug_name
```
3. 在 drug App 的 admin.py 文件中注册 Drug 模型类并自定义展示列:
```python
from django.contrib import admin
from .models import Drug
class DrugAdmin(admin.ModelAdmin):
list_display = ('id', 'drug_name')
admin.site.register(Drug, DrugAdmin)
```
4. 在 settings.py 文件中配置数据库连接信息:
```python
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'drug_db',
'USER': 'your_mysql_username',
'PASSWORD': 'your_mysql_password',
'HOST': 'your_mysql_host',
'PORT': 'your_mysql_port',
}
}
```
注意替换其中的数据库连接信息为你自己的。
5. 执行 `python manage.py makemigrations` 和 `python manage.py migrate` 命令来创建数据库表。
6. 在 admin.py 文件中定义 DrugInline 来实现 Drug 对象在其他模型的内联展示:
```python
from django.contrib import admin
from .models import Drug
class DrugInline(admin.TabularInline):
model = Drug
extra = 0
class SomeOtherModelAdmin(admin.ModelAdmin):
inlines = [DrugInline]
```
7. 在 admin.py 文件中自定义 DrugAdmin 的 form 属性来实现增删改查操作:
```python
from django import forms
from django.contrib import admin
from .models import Drug
class DrugForm(forms.ModelForm):
class Meta:
model = Drug
fields = '__all__'
class DrugAdmin(admin.ModelAdmin):
form = DrugForm
list_display = ('id', 'drug_name')
admin.site.register(Drug, DrugAdmin)
```
这样就完成了一个简单的后台 admin 系统中药品信息管理页面的增删改查功能。
阅读全文