From fd70bc138e0ab2f24fe50d1fbfd0baf1da759319 Mon Sep 17 00:00:00 2001 From: Anand Doshi Date: Tue, 25 Mar 2014 19:32:31 +0530 Subject: [PATCH] Fixed db_schema --- frappe/model/db_schema.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/frappe/model/db_schema.py b/frappe/model/db_schema.py index fa6240dca1..b948c07c88 100644 --- a/frappe/model/db_schema.py +++ b/frappe/model/db_schema.py @@ -68,12 +68,12 @@ class DbTable: add_text = '' # columns - t = self.get_column_definitions() - if t: add_text += ',\n'.join(self.get_column_definitions()) + ',\n' + column_defs = self.get_column_definitions() + if column_defs: add_text += ',\n'.join(column_defs) + ',\n' # index - t = self.get_index_definitions() - if t: add_text += ',\n'.join(self.get_index_definitions()) + ',\n' + index_defs = self.get_index_definitions() + if index_defs: add_text += ',\n'.join(index_defs) + ',\n' # create table frappe.db.sql("""create table `%s` ( @@ -129,9 +129,10 @@ class DbTable: def get_index_definitions(self): ret = [] - for k in self.columns.keys(): - if type_map.get(self.columns[k].fieldtype) and type_map.get(self.columns[k].fieldtype)[0] not in ('text', 'longtext'): - ret.append('index `' + k + '`(`' + k + '`)') + for key, col in self.columns.items(): + if col.set_index and col.fieldtype in type_map and \ + type_map.get(col.fieldtype)[0] not in ('text', 'longtext'): + ret.append('index `' + key + '`(`' + key + '`)') return ret