加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

cakephp – 配置蛋糕烘焙以启用级联删除

发布时间:2020-12-13 13:01:57 所属栏目:PHP教程 来源:网络整理
导读:我正在使用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-pr
我正在使用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',]);
}

但是,上面的initialize()函数不允许我进行级联删除.

我需要手动修改下面的initialize()以启用级联删除.但这很麻烦,因为文件每次都会被新的蛋糕烘烤覆盖.

$this->hasMany('BallRecords',//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,]);

有没有办法配置蛋糕烘焙自动生成手动启用级联删除的代码?

编辑:添加赏金以邀请配置烘焙模板的答案.

很不幸的是,不行…

从Cake Back Model生成器,您可以配置与Cascading选项的关联.

您可以通过键入命令bin / cake bake model –help来查看cake bake model选项的帮助

$bin/cake bake model --help

Welcome to CakePHP v3.3.3 Console
---------------------------------------------------------------
App : src
Path: C:wampwwwstudent_logicsrc
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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读