Commit bc6d7555 authored by Serge S. Koval's avatar Serge S. Koval

Merge branch 'master' of github.com:mrjoes/flask-admin

parents 6ce54ace 4302431b
def parse_like_term(term): def parse_like_term(term):
""" """
Parse search term into (operation, term) tuple Parse search term into (operation, term) tuple. Recognizes operators
in the beginning of the search term.
* = case insensitive (can precede other operators)
^ = starts with
= = exact
:param term: :param term:
Search term Search term
""" """
case_insensitive = term.startswith('*')
if case_insensitive:
term = term[1:]
# apply operators
if term.startswith('^'): if term.startswith('^'):
return 'startswith', term[1:] oper = 'startswith'
term = term[1:]
elif term.startswith('='): elif term.startswith('='):
return 'exact', term[1:] oper = 'exact'
term = term[1:]
return 'contains', term else:
oper = 'contains'
# add case insensitive flag
if case_insensitive:
oper = 'i'+oper
return oper, term
...@@ -78,7 +78,7 @@ class AdminModelConverter(ModelConverterBase): ...@@ -78,7 +78,7 @@ class AdminModelConverter(ModelConverterBase):
if local_column.nullable: if local_column.nullable:
kwargs['validators'].append(validators.Optional()) kwargs['validators'].append(validators.Optional())
elif prop.direction.name != 'MANYTOMANY': elif prop.direction.name != 'MANYTOMANY':
kwargs['validators'].append(validators.Required()) kwargs['validators'].append(validators.InputRequired())
# Override field type if necessary # Override field type if necessary
override = self._get_field_override(prop.key) override = self._get_field_override(prop.key)
...@@ -153,7 +153,7 @@ class AdminModelConverter(ModelConverterBase): ...@@ -153,7 +153,7 @@ class AdminModelConverter(ModelConverterBase):
column)) column))
if not column.nullable and not isinstance(column.type, Boolean): if not column.nullable and not isinstance(column.type, Boolean):
kwargs['validators'].append(validators.Required()) kwargs['validators'].append(validators.InputRequired())
# Apply label and description if it isn't inline form field # Apply label and description if it isn't inline form field
if self.view.model == mapper.class_: if self.view.model == mapper.class_:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment