Портал Python-программистов

Форумы сайта python.su

Вы не зашли.

Объявление

Официальная wiki коммунити: wiki.python.su обсуждение

Официальная джаббер конференция коммунити: pythonua@conference.jabber.ru (всегда 20-35 онлайн участников). Настройки

КОД ОБОРАЧИВАТЬ В ТЕГИ [code][/code]

#1 2007-04-29 10:36:16

PooH
Питонер
Откуда: Барнаул
Зарегистрирован: 2006-12-05
Сообщений: 798
Профиль

InheritableSQLObject

Кто-нибудь знает как отобразить два класса на одну таблицу? Ситуация такая
[code python]
class A(InheritableSQLObject):
     '''Базовый класс'''

class B(A):
    '''Первый наследник'''

class C(A):
    '''Второй наследник'''
[/code]
Классы B и С имеют одинаковый набор атрибутов, различаются только методами. В базе получается три таблицы, причем в B и C только поля id и child_name. Неаккуратненько как то smile Да и запрос лишний при загрузке.

Отредактированно PooH (2007-04-29 10:40:04)

Неактивен

 

#2 2007-04-29 23:53:40

OlDer
Питонер
Зарегистрирован: 2006-07-19
Сообщений: 133
Профиль

Re: InheritableSQLObject

PooH написал:

Кто-нибудь знает как отобразить два класса на одну таблицу?

В sqlmeta всем этим классам пропиши одну и ту же таблицу.


http://www.sloganizer.net/en/image,python,white,green.png

Неактивен

 

#3 2008-07-05 10:26:20

satels@gmail.com
Питонер
Откуда: Екатеринбург
Зарегистрирован: 2008-04-15
Сообщений: 16
Профиль  Вебсайт

Re: InheritableSQLObject

PooH написал:

Кто-нибудь знает как отобразить два класса на одну таблицу? Ситуация такая
[code python]
class A(InheritableSQLObject):
     '''Базовый класс'''

class B(A):
    '''Первый наследник'''

class C(A):
    '''Второй наследник'''
[/code]
Классы B и С имеют одинаковый набор атрибутов, различаются только методами. В базе получается три таблицы, причем в B и C только поля id и child_name. Неаккуратненько как то smile Да и запрос лишний при загрузке.

Поставь  _inheritable=False:
class D(A):
     _inheritable=False

Неактивен

 

Board footer

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson

Board footer

Реклама: