8 cakephp cakephp-3.0 cake-bake
我正在使用cakephp v3.3.3
使用cake bake自动生成代码后,我有这个php文件BallsTable.php,它有下面的initialize()函数;
public function initialize(array $config)
{
parent::initialize($config);
$this->table('balls');
$this->displayField('id');
$this->primaryKey('id');
$this->belongsTo('Baskets', [
'foreignKey' => 'basket_id',
'joinType' => 'INNER'
]);
$this->hasMany('BallRecords', [
'foreignKey' => 'ball_id',
]);
}
Run Code Online (Sandbox Code Playgroud)
但是,上面的initialize()函数不允许我进行级联删除.
我需要手动修改下面的initialize()以启用级联删除.但这很麻烦,因为每次使用新蛋糕烘焙时文件都会被覆盖.
$this->hasMany('BallRecords', [
'foreignKey' => 'ball_id',
//http://book.cakephp.org/3.0/en/orm/deleting-data.html
//manually add the 2 lines below to enable cascading delete
'dependent' => true,
'cascadeCallbacks' => true,
]);
Run Code Online (Sandbox Code Playgroud)
有没有办法配置蛋糕烘焙自动生成手动启用级联删除的代码?
编辑:添加赏金以邀请配置烘焙模板的答案.
从 Cake Back 模型生成器中,您可以配置与级联选项的关联。
您可以通过键入命令来检查蛋糕烘焙模型选项的帮助bin/cake bake model --help
$ bin/cake bake model --help
Welcome to CakePHP v3.3.3 Console
---------------------------------------------------------------
App : src
Path: C:\wamp\www\student_logic\src\
PHP : 5.5.12
---------------------------------------------------------------
Bake table and entity classes.
Usage:
cake bake.bake model [subcommand] [options] [<name>]
Subcommands:
all Bake all model files with associations and validation.
To see help on a subcommand use `cake bake.bake model [subcommand] --help`
Options:
--help, -h Display this help.
--verbose, -v Enable verbose output.
--quiet, -q Enable quiet output.
--plugin, -p Plugin to bake into.
--force, -f Force overwriting existing files without
prompting.
--connection, -c The datasource connection to get data from.
(default: default)
--theme, -t The theme to use when baking code.
(choices: Bake|Migrations)
--table The table name to use if you have
non-conventional table names.
--no-entity Disable generating an entity class.
--no-table Disable generating a table class.
--no-validation Disable generating validation rules.
--no-rules Disable generating a rules checker.
--no-associations Disable generating associations.
--no-fields Disable generating accessible fields in the
entity.
--fields A comma separated list of fields to make
accessible.
--no-hidden Disable generating hidden fields in the entity.
--hidden A comma separated list of fields to hide.
--primary-key The primary key if you would like to manually set
one. Can be a comma separated list if you are
using a composite primary key.
--display-field The displayField if you would like to choose one.
--no-test Do not generate a test case skeleton.
--no-fixture Do not generate a test fixture skeleton.
Arguments:
name Name of the model to bake. Can use Plugin.name to bake plugin
models. (optional)
Omitting all arguments and options will list the table names you can
generate models for
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
388 次 |
| 最近记录: |