"""Language model.""" from oto import response import sqlalchemy from product.connectors import mysql class Language(mysql.BaseModel): """Language model.""" __tablename__ = 'language' language_code = sqlalchemy.Column( sqlalchemy.String, primary_key=True, nullable=False) language = sqlalchemy.Column(sqlalchemy.String) iso_639_1_code = sqlalchemy.Column(sqlalchemy.String(2)) def to_dict(self): """Format the properties of this language object as a dict.""" return { 'code': self.language_code, 'iso_code': self.iso_639_1_code if self.iso_639_1_code else '', 'name': self.language} def get_languages(): """Fetch a list of language dictionaries. Returns: response.Response: list of language dictionaries """ with mysql.db_session() as session: query = session.query(Language) languages = [lang.to_dict() for lang in query.all()] payload = {'items': languages} return response.Response(message=payload)