flask peewee 如何在 edit/creating 形式时更改字段顺序
flask peewee how to change the field order when edit/creating forms
对于模型 User
我想在其中放入一个内联模型 ProjectNotes
,以及如何
我可以在创建或编辑时更改字段顺序吗?
例如,将顺序更改为 ProjectNotes, username, email.
(见下图。)
class User(BaseModel):
username = peewee.CharField(max_length=80)
email = peewee.CharField(max_length=120)
def __unicode__(self):
return self.username
class ProjectNotes(BaseModel):
comment = peewee.CharField(max_length=64)
user = peewee.ForeignKeyField(User)
def __unicode__(self):
return '%s - %s' % (self.comment)
class UserAdmin(ModelView):
inline_models = (ProjectNotes,)
admin.add_view(UserAdmin(User))
您可以 pass additional attributes 例如 form_columns
、form_label
、column_labels
for inline_models
作为字典:
class UserAdmin(ModelView):
inline_models = [
(ProjectNotes, {'form_columns': ('user', 'comment')})
]
或者为您的 ProjectNotes
模型创建表单 class:
from flask_admin.model.form import InlineFormAdmin
class ProjectNotesAdmin(InlineFormAdmin):
form_columns = ('user', 'comment')
class UserAdmin(ModelView):
inline_models = [ProjectNotesAdmin(ProjectNotes)]
我还发现我需要在 form_columns
中为 flask_admin.contrib.sqla.ModelView
指定主键列。不知道你是否需要为 flask_admin.contrib.peewee.ModelView
.
做同样的事情
对于模型 User
我想在其中放入一个内联模型 ProjectNotes
,以及如何
我可以在创建或编辑时更改字段顺序吗?
例如,将顺序更改为 ProjectNotes, username, email.
(见下图。)
class User(BaseModel):
username = peewee.CharField(max_length=80)
email = peewee.CharField(max_length=120)
def __unicode__(self):
return self.username
class ProjectNotes(BaseModel):
comment = peewee.CharField(max_length=64)
user = peewee.ForeignKeyField(User)
def __unicode__(self):
return '%s - %s' % (self.comment)
class UserAdmin(ModelView):
inline_models = (ProjectNotes,)
admin.add_view(UserAdmin(User))
您可以 pass additional attributes 例如 form_columns
、form_label
、column_labels
for inline_models
作为字典:
class UserAdmin(ModelView):
inline_models = [
(ProjectNotes, {'form_columns': ('user', 'comment')})
]
或者为您的 ProjectNotes
模型创建表单 class:
from flask_admin.model.form import InlineFormAdmin
class ProjectNotesAdmin(InlineFormAdmin):
form_columns = ('user', 'comment')
class UserAdmin(ModelView):
inline_models = [ProjectNotesAdmin(ProjectNotes)]
我还发现我需要在 form_columns
中为 flask_admin.contrib.sqla.ModelView
指定主键列。不知道你是否需要为 flask_admin.contrib.peewee.ModelView
.