当我尝试与user->组建立关系时,我在此处收到错误是我的代码
<?php
class User extends Doctrine_Record {
public function setTableDefinition() {
$this->hasColumn('username', 'string', 255, array('unique' => 'true'));
$this->hasColumn('password', 'string', 255);
$this->hasColumn('email', 'string', 255, array('unique' => 'true'));
$this->hasColumn('group_id', 'integer', 20);
}
public function setUp() {
$this->setTableName('users');
$this->actAs('Timestampable');
$this->hasMutator('password', '_encrypt_password');
$this->hasOne('Group', array(
'local' => 'group_id',
'foreign' => 'id'
));
}
protected function _encrypt_password($value) {
$salt = '#*seCrEt!@-*%';
$this->_set('password', md5($salt . $value));
}
}
?>
有人可以解释为什么我会收到错误吗?
这是我的群组代码:
<?php
class Group extends Doctrine_Record {
public function setTableDefinition() {
$this->hasColumn('name', 'string', 255);
}
public function setUp() {
$this->setTableName('groups');
}
}
?>
我正在运行Code Igniter 1.7.2和Doctrine 1.2.2
答案 0 :(得分:1)
老问题,但没有回答......我自己遇到了一些问题,问题是这个
$ this-&gt; hasColumn('group_id','integer', 20 );
对我来说,默认的学说设置是4,它总是给我错误,除非我改变关系的int
因此,如果我必须使用的学说中的默认值为4 $ this-&gt; hasColumn('group_id','integer', 4 );
注意:我也使用Codeigniter 1.7.2 + Doctrine(但是1.2.1),看起来你正在尝试和我一样的教程。
如果遇到问题,请注意结帐