我有一个使用以下语法创建的表:
CREATE TABLE `Agreements` (
`Agreement_ID` int(30) NOT NULL AUTO_INCREMENT,
`Case_ID` int(11) NOT NULL,
KEY `fk_case_id` (`Case_ID`),
CONSTRAINT `fk_case_id` FOREIGN KEY (`Case_ID`) REFERENCES `cases` (`case_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
运行propel database:reverse
生成的架构时如下所示:
<?xml version="1.0" encoding="utf-8"?>
<database name="xxx" defaultIdMethod="native" defaultPhpNamingMethod="underscore">
<table name="Agreements" idMethod="native" phpName="Agreements">
<column name="Agreement_ID" phpName="AgreementId" type="INTEGER" size="30" autoIncrement="true" required="true"/>
<column name="Case_ID" phpName="CaseId" type="INTEGER" required="true"/>
<foreign-key foreignTable="Cases" name="fk_case_id">
<reference local="Case_ID" foreign=""/>
</foreign-key>
<index name="fk_case_id">
<index-column name="Case_ID"/>
</index>
<vendor type="mysql">
<parameter name="Engine" value="InnoDB"/>
</vendor>
</table>
</database>
如您所见,元素的foreign
属性foreign-key
为空,这反过来又阻止了 propel 基于此模式生成模型。
我有点卡在这里 - 任何帮助将不胜感激