Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
F
flask-admin
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Python-Dev
flask-admin
Commits
1a62fce5
Commit
1a62fce5
authored
Dec 15, 2013
by
Serge S. Koval
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Missed files
parent
2fdfb584
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
22 additions
and
11 deletions
+22
-11
subdoc.py
flask_admin/contrib/mongoengine/subdoc.py
+0
-8
fields.py
flask_admin/contrib/sqla/fields.py
+13
-2
form.py
flask_admin/model/form.py
+9
-1
No files found.
flask_admin/contrib/mongoengine/subdoc.py
View file @
1a62fce5
from
flask.ext.admin._compat
import
iteritems
from
flask.ext.admin.form
import
rules
from
flask.ext.admin.model.form
import
InlineBaseFormAdmin
...
...
@@ -9,13 +8,6 @@ class EmbeddedForm(InlineBaseFormAdmin):
self
.
_form_subdocuments
=
convert_subdocuments
(
getattr
(
self
,
'form_subdocuments'
,
{}))
form_rules
=
getattr
(
self
,
'form_rules'
,
None
)
if
form_rules
:
self
.
_form_rules
=
rules
.
RuleSet
(
self
,
form_rules
)
else
:
self
.
_form_rules
=
None
def
convert_subdocuments
(
values
):
result
=
{}
...
...
flask_admin/contrib/sqla/fields.py
View file @
1a62fce5
...
...
@@ -9,7 +9,9 @@ from wtforms.validators import ValidationError
from
.tools
import
get_primary_key
from
flask.ext.admin._compat
import
text_type
,
string_types
from
flask.ext.admin.form
import
FormOpts
from
flask.ext.admin.model.fields
import
InlineFieldList
,
InlineModelFormField
from
flask.ext.admin.model.widgets
import
InlineFormWidget
try
:
...
...
@@ -186,7 +188,7 @@ class InlineModelFormList(InlineFieldList):
Form field type. Override to use custom field for each inline form
"""
def
__init__
(
self
,
form
,
session
,
model
,
prop
,
inline_view
,
**
kwargs
):
def
__init__
(
self
,
form
,
session
,
model
,
prop
,
inline_view
,
form_widget
=
None
,
**
kwargs
):
"""
Default constructor.
...
...
@@ -209,7 +211,16 @@ class InlineModelFormList(InlineFieldList):
self
.
_pk
=
get_primary_key
(
model
)
super
(
InlineModelFormList
,
self
)
.
__init__
(
self
.
form_field_type
(
form
,
self
.
_pk
),
**
kwargs
)
# Generate inline form field
if
form_widget
is
None
:
form_opts
=
FormOpts
(
widget_args
=
getattr
(
inline_view
,
'form_widget_args'
,
None
),
form_rules
=
inline_view
.
_form_rules
)
form_widget
=
InlineFormWidget
(
form_opts
)
form_field
=
self
.
form_field_type
(
form
,
self
.
_pk
,
widget
=
form_widget
)
super
(
InlineModelFormList
,
self
)
.
__init__
(
form_field
,
**
kwargs
)
def
display_row_controls
(
self
,
field
):
return
field
.
get_pk
()
is
not
None
...
...
flask_admin/model/form.py
View file @
1a62fce5
import
inspect
from
flask.ext.admin.form
import
BaseForm
from
flask.ext.admin.form
import
BaseForm
,
rules
from
flask.ext.admin._compat
import
iteritems
...
...
@@ -37,6 +37,14 @@ class InlineBaseFormAdmin(object):
for
k
,
v
in
iteritems
(
kwargs
):
setattr
(
self
,
k
,
v
)
# Convert form rules
form_rules
=
getattr
(
self
,
'form_rules'
,
None
)
if
form_rules
:
self
.
_form_rules
=
rules
.
RuleSet
(
self
,
form_rules
)
else
:
self
.
_form_rules
=
None
def
get_form
(
self
):
"""
If you want to use completely custom form for inline field, you can override
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment