# -*- coding: utf-8 -*-

from . import db
from datetime import datetime
from .base import BaseModel, PrimaryModel

class {{ className }}(db.Model):
    __tablename__ = '{{ tableName }}'
{% for key, value in fields.items() %}
    {% if value.get('primaryKey', None) %}
        value.get('name') = db.Column(db.{{ value.get('dataType') }}, primary_key = True, {% if value.get('autoIncrement') %}autoincrement = True{% endif %})
    {% else %}
        value.get('name') = db.Column(db.{{ value.get('dataType') }}{% if value.get("length", None) %}(value.get("length")){% endif %}{% if value.get("index", False) %}, index = True{% endif %}{% if value.get("default", None) %}, default = value.get("default"){% endif %})
    {% endif %}
{% endfor %}

    # __table_args__ = (
    #     db.Index('idx_areaCode', 'areaCode', mysql_using='btree'),
    # )

    def __init__(self{% for for key, value in fields.items() %}, {{ value.get("name") }}{% endfor %}):
{% for key, value in fields.items() %}
        self.{{ value.get("name") }} = {{ value.get("name") }}
{% endfor %}

    def __repr__(self):
        return '<{{ className }} %r>' % (self.{{ fields[0]["name"] }})