oshipka/vm_gen/templates/_model_py

36 lines
1.3 KiB
Plaintext
Raw Normal View History

2020-06-04 15:24:18 +02:00
[%- if _choice_types %]
from sqlalchemy_utils import ChoiceType
[%- endif %]
2020-07-08 14:38:55 +02:00
class [[ name ]](db.Model, ModelController[% for inherit in interits %], [[ inherit ]][% endfor %]):
2020-06-04 15:24:18 +02:00
[%- include "_model_choice_header_py" %]
[%- include "_model_searchable_header_py" %]
2021-05-08 12:24:13 +02:00
_file_columns = [ [%- for column in columns %][%- if column.is_file %]"[[ column.name ]]"[%- endif %] [%- endfor %] ]
2020-06-04 15:24:18 +02:00
[%- for column in columns %]
[%- if column._type == 'relationship' %]
[%- include "_relationship_py" %]
[%- else %]
[[ column.name ]] = db.Column([[ column._type ]],
[%- if column.default %]default="[[ column.default ]]",[%- endif %]
[%- if column.index %]index=True,[%- endif %])
[%- endif %]
[%- endfor %]
[%- if extra_code %]
[[ extra_code ]]
[%- endif %]
2020-08-11 19:02:29 +02:00
[%- if display %]
def __repr__(self):
[%- if display.tertiary %]
return "{} ({} - {})".format(self.[[ display.primary ]], self.[[ display.secondary ]], self.[[ display.tertiary]])
[%- elif display.secondary %]
return "{} ({})".format(self.[[ display.primary ]], self.[[ display.secondary ]])
[%- else %]
return "{}".format(self.[[ display.primary ]])
[%- endif %]
[%- endif %]