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
41714663
Commit
41714663
authored
May 18, 2012
by
Serge S. Koval
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixed #14. M2M are always optional.
parent
fe6ab380
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
19 additions
and
1 deletion
+19
-1
simple.py
examples/sqla/simple.py
+18
-0
form.py
flask_admin/contrib/sqlamodel/form.py
+1
-1
No files found.
examples/sqla/simple.py
View file @
41714663
...
...
@@ -28,6 +28,13 @@ class User(db.Model):
return
self
.
username
# Create M2M table
post_tags_table
=
db
.
Table
(
'post_tags'
,
db
.
Model
.
metadata
,
db
.
Column
(
'post_id'
,
db
.
Integer
,
db
.
ForeignKey
(
'post.id'
)),
db
.
Column
(
'tag_id'
,
db
.
Integer
,
db
.
ForeignKey
(
'tag.id'
))
)
class
Post
(
db
.
Model
):
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
)
title
=
db
.
Column
(
db
.
String
(
120
))
...
...
@@ -37,10 +44,20 @@ class Post(db.Model):
user_id
=
db
.
Column
(
db
.
Integer
(),
db
.
ForeignKey
(
User
.
id
))
user
=
db
.
relationship
(
User
,
backref
=
'posts'
)
tags
=
db
.
relationship
(
'Tag'
,
secondary
=
post_tags_table
)
def
__unicode__
(
self
):
return
self
.
title
class
Tag
(
db
.
Model
):
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
)
name
=
db
.
Column
(
db
.
Unicode
(
64
))
def
__unicode__
(
self
):
return
self
.
name
# Flask views
@
app
.
route
(
'/'
)
def
index
():
...
...
@@ -83,6 +100,7 @@ if __name__ == '__main__':
# Add views
admin
.
add_view
(
sqlamodel
.
ModelView
(
User
,
db
.
session
))
admin
.
add_view
(
sqlamodel
.
ModelView
(
Tag
,
db
.
session
))
admin
.
add_view
(
PostAdmin
(
db
.
session
))
# Create DB
...
...
flask_admin/contrib/sqlamodel/form.py
View file @
41714663
...
...
@@ -85,7 +85,7 @@ class AdminModelConverter(ModelConverter):
if
local_column
.
nullable
:
kwargs
[
'validators'
]
.
append
(
validators
.
Optional
())
el
se
:
el
if
prop
.
direction
.
name
!=
'MANYTOMANY'
:
kwargs
[
'validators'
]
.
append
(
validators
.
Required
())
# Override field type if necessary
...
...
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