php - detach() 方法也可以应用于 Laravel 中的一对多关系吗?

标签 php laravel laravel-5

在 Laravel 文档中,我发现 detach() 方法可以分离多对多关系中的所有对象。 Laravel 中的 detach() 方法也可以应用于一对多关系吗?如果没有,在这种情况下如何分离所有 n 个对象?

最佳答案

在多对多关系中, detach() 方法仅删除数据库中的枢轴条目,除非您有特定的级联删除。

对于一对多关系,您希望使用 dissociate() 方法解除关系的绑定(bind),并使用 associate() 将其绑定(bind)到belongsTo 端。

    $comment->post()->associate($post->id);

相反,您可以在 hasMany 端使用 attach() 添加帐户:
    $post->comments()->attach($comment->id);

要删除所有评论,您可以执行以下操作:
    $post->comments()->delete();

更多信息在这里:
https://laravel.com/docs/5.6/eloquent-relationships

关于php - detach() 方法也可以应用于 Laravel 中的一对多关系吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49323458/

相关文章:

Laravel 返回的错误未在前端显示

php - Laravel 多个 WHERE 子句

php - Laravel 5 文件下载无效

php - 通过codeigniter将数据从android发布到mysql

javascript - 从 Javascript Date.now 到 PHP 日期

php - 如何将 PHP 变量值添加到 Between Query

mysql - 如何使用 Laravel 查询生成器编写此 MySQL?

php - 如何在资源/ View 目录 Laravel 中创建文件

php - 我如何使用 phpseclib 创建自签名证书

javascript - 提交表单后将引导模式显示为 "thank you"