Rag*_*dey 5 python django django-models django-forms django-admin
我想向 admin.py “extra_field”添加一个自定义字段,该字段在forms.py
forms.py中的 YourModelForm 类中定义
***class YourModelForm(forms.ModelForm):***
extra_field = forms.CharField()
def save(self, commit=True):
extra_field = self.cleaned_data.get('extra_field', None)
# ...do something with extra_field here...
return super(YourModelForm, self).save(commit=commit)
class Meta:
model = movie
fields = '__all__'
Run Code Online (Sandbox Code Playgroud)
管理员.py
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.contrib import admin
from . models import movie, genre
from . import forms
class movieAdmin(admin.ModelAdmin):
form = YourModelForm
list_display=('movie_name', 'movie_rating','Date','count',)
search_fields=('movie_name',)
filter_horizontal=('movie_genres',)
list_filter=('Date',)
date_hierarchy='Date'
ordering=('-movie_name',)
fields=('movie_name','movie_rating','movie_genres', 'extra_field',)
class genreAdmin(admin.ModelAdmin):
list_display=('genre_name',)
admin.site.register(movie, movieAdmin)
admin.site.register(genre, genreAdmin)
Run Code Online (Sandbox Code Playgroud)
NameError:名称“YourModelForm”未定义
您已将forms模块作为一个整体导入,因此您需要使用该限定名称:
form = forms.YourModelForm
Run Code Online (Sandbox Code Playgroud)
(注意,这是标准的 Python 导入语义,与 Django 无关。)
| 归档时间: |
|
| 查看次数: |
973 次 |
| 最近记录: |