1
0
mirror of synced 2024-12-16 08:06:02 +03:00
doctrine2/manual/new/docs/en/object-relational-mapping/introduction.txt

44 lines
1.7 KiB
Plaintext
Raw Normal View History

2007-06-13 02:18:21 +04:00
Doctrine_Record::hasColumn() takes 4 arguments:
# **column name**
# **column type**
# **column length**
# **column constraints and validators**
<code type="php">
2007-06-13 02:18:21 +04:00
class Email extends Doctrine_Record {
public function setTableDefinition() {
// setting custom table name:
$this->setTableName('emails');
$this->hasColumn('address', // name of the column
'string', // column type
'200', // column length
array('notblank' => true,
'email' => true // validators / constraints
)
);
$this->hasColumn('address2', // name of the column
'string', // column type
'200', // column length
// validators / constraints without arguments can be
// specified also as as string with | separator
'notblank|email'
);
// Doctrine even supports the following format for
// validators / constraints which have no arguments:
$this->hasColumn('address3', // name of the column
'string', // column type
'200', // column length
array('notblank', 'email')
);
}
}
</code>
Note that validators / column constraints and the column length fields are optional. The length may be omitted by using **null** for the length arguement, allowing doctrine to use a default length and permitting a fourth arguement for validation or column constraints.