Я думаю, вы хотите иметь то, что вы перечислили:
SubPage:
class: Page
local: subpage
foreign: id
type: one
но вам нужен столбец идентификатора (foreign: id) для первичного ключа таблицы Page и столбец с именем 'subpage', который содержит ссылку (local: subpage) на дочерний элемент. Таким образом, у вас может быть страница с id = "100", содержащая поле с именем subpage, которое содержит id = "200", и что "200" является фактическим ключом (id) другой страницы.
ОБНОВЛЕНИЕ: Из комментария изменить исходный файл схемы:
Page:
actAs:
I18n:
fields: [name,html,urlShortDesc]
columns:
name: string
gender:
type: enum
values: [html, photoGallery]
default: html
html: string
urlShortDesc: string
section_id:
type: integer
notnull: true
id:
type: integer
notnull: true
subpage:
type: integer
notnull: false
relations:
Section:
foreignAlias: Pages
SubPage:
class: Page
local: subpage
foreign: id
type: one
Обратите внимание, что я делаю некоторые серьезные предположения относительно вашей схемы, в том числе:
- вы хотите, чтобы id был вашим первичным ключом, и что вы позаботитесь о том, чтобы он был установлен (вам может потребоваться автоинкремент: true в схеме).
- подстраница необязательна как дочернее отношение
- section_id не является вашим первичным ключом