Найти - Пользователи
Полная версия: Опции модели для MySQL
Начало » Django » Опции модели для MySQL
1 2
Nick2009
Daevaorn
Это правила транслирования DSL нотации на питоне в DDL базы данных. Но в любом случае, вы всегда можете указать явно как название конкретного поля - http://docs.djangoproject.com/en/dev/re … db-column, так и таблицы - http://docs.djangoproject.com/en/dev/re … #db-table.
Я так понимаю, эти правила отключить или изменить в одном месте нельзя? О неудобстве тавтологии с именами уже названных полей и таблиц я уже писал выше.

За ссылки спасибо. Помогают.
Nick2009
Daevaorn
Напишите свое поле.
Создал свое поле:
class AutoPositiveIntegerField(models.Field):
def __init__(self, *args, **kwargs):
super(AutoPositiveIntegerField, self).__init__(*args, **kwargs)
def db_type(self):
return ‘integer unsigned AUTO_INCREMENT’

Применил в качестве PK:
class Item(models.Model):
item_id=AutoPositiveIntegerField(primary_key=True)

Использовал в качестве FK:
class Info(models.Model):
info_id=AutoPositiveIntegerField(primary_key=True)
item_id=models.ForeignKey(Item,db_column='item_id')

Получил следующий результат:
CREATE TABLE `info` (
`info_id` integer unsigned AUTO_INCREMENT NOT NULL PRIMARY KEY,
`item_id` integer unsigned AUTO_INCREMENT NOT NULL
);

Что я не так делаю? :(
Александр Кошелев
Nick2009
Что я не так делаю? sad
А вы чего хотели?

PS: пользуйтесь тегом
Nick2009
Daevaorn
А вы чего хотели?
Понятно чего. Как PK сделать UNSIGNED и AUTO_INCREMENT и при этом чтобы нормально определялись FK?
Nick2009
Nick2009
Daevaorn
http://docs.djangoproject.com/en/dev/ref/settings/#database-options
И где там об этом?
CREATE TABLE static(...) TYPE=MYISAM ROW_FORMAT=fixed;
CREATE TABLE dinamic(...) TYPE=InnoDB ROW_FORMAT=fixed;
и т.п.
А существует ли вообще какая-нибудь(любая) опция модели, которая выводится между закрывающей скобкой таблицы и точкой с запятой?…
Nick2009
Daevaorn
Напишите просто комментарии, в которых укажите специфичные настройки для конкретной таблицы модели. Хоть как-то документируете.
Как это сделать? Нужно, чтобы комментарии выводились в код SQL
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB