从夹具文件生成的字段列表中的未知列
Unknown column in field list generating from fixture file
我创建了一个夹具文件来测试我使用 Dna Design's Silverstripe Elemental package 创建的元素,Silverstripe 似乎坚持 has_many
关系 'Elements'
在 ElementalArea
不存在。
SilverStripe\ORM\Connect\DatabaseException: Couldn't run query:
INSERT INTO "ElementalArea"
("Elements")
VALUES
(?)
Unknown column 'Elements' in 'field list'
我有夹具文件:
---
MyElement:
my-element:
...
ElementalArea:
elemental-area:
Elements: =>MyElement.my-element
我试过 运行 sake /dev/build "flush=all"
并清除 /tmp/sivlerstripe-cache...
但没有成功
在 Silverstripe 4 中,Elemental 模块被命名空间。在我们的 fixture yml 文件中,我们必须为 ElementalArea
.
提供完整的命名空间路径
另外,在有很多关系的情况下,我们可以在有一侧(元素)设置关系:
DNADesign\Elemental\Models\ElementalArea:
elemental-area:
Title: 'Area 1'
DNADesign\Elemental\Tests\Src\TestPage:
page1:
Title: 'Page 1'
URLSegment: 'test-page'
ElementalAreaID: =>DNADesign\Elemental\Models\ElementalArea.elemental-area
MyElement:
my-element:
Title: 'Element 1'
ParentID: =>DNADesign\Elemental\Models\ElementalArea.elemental-area
我创建了一个夹具文件来测试我使用 Dna Design's Silverstripe Elemental package 创建的元素,Silverstripe 似乎坚持 has_many
关系 'Elements'
在 ElementalArea
不存在。
SilverStripe\ORM\Connect\DatabaseException: Couldn't run query:
INSERT INTO "ElementalArea"
("Elements")
VALUES
(?)
Unknown column 'Elements' in 'field list'
我有夹具文件:
---
MyElement:
my-element:
...
ElementalArea:
elemental-area:
Elements: =>MyElement.my-element
我试过 运行 sake /dev/build "flush=all"
并清除 /tmp/sivlerstripe-cache...
但没有成功
在 Silverstripe 4 中,Elemental 模块被命名空间。在我们的 fixture yml 文件中,我们必须为 ElementalArea
.
另外,在有很多关系的情况下,我们可以在有一侧(元素)设置关系:
DNADesign\Elemental\Models\ElementalArea:
elemental-area:
Title: 'Area 1'
DNADesign\Elemental\Tests\Src\TestPage:
page1:
Title: 'Page 1'
URLSegment: 'test-page'
ElementalAreaID: =>DNADesign\Elemental\Models\ElementalArea.elemental-area
MyElement:
my-element:
Title: 'Element 1'
ParentID: =>DNADesign\Elemental\Models\ElementalArea.elemental-area