php - Laravel Nova Actions 多条消息
问题描述
我可以在论坛中为我的问题找到合适的解决方案。
在我的 Laravel nova 中,我有一些课程类别,如果用户想要删除其中的一些,我会创建一个删除数据的操作,但在此之前我会检查这些课程类别中是否包含一些课程。这一切正常。我将为每个检查的类别进行一个 foreach 循环,但如果有些是可删除的,有些不是,则 foreach 会中断并停止。我认为这是因为返回语句。但是我怎样才能得到这个回报
`Action::message('Deleted!');`
或者
Action::danger('The Course Category "'.$model->name.'" could not be deleted, it may contains some Courses!');
在没有跳出循环的情况下完成并继续?
解决方案
在循环之前设置一个变量——我们称之为“alldeleted”。
$alldeleted = true;
并为无法删除的类别设置一个空白数组:
$undeletedcategories = array();
如果在循环期间无法删除其中一个类别,请注意通过将 alldeleted 设置为 false,将类别名称添加到数组中,并使用 continue 转到循环中的下一个元素:
$alldeleted = false;
$undeletedcategories[] = $model->name;
continue;
然后,在流程结束时,查看 $alldeleted 是否为真,并相应地撰写您的回复:
if($alldeleted) {
// return your "all deleted alright" status message here.
} else {
// Return the "these categories weren't deleted" status message here.
}
推荐阅读
- memory-management - 我们可以在 puppeteer 中打开多少个并行浏览器选项卡?
- python-3.x - 如果列中的值与前一行相同以保持序列增加,是否有 Python 函数对列中的值 +1?
- java - 角度日期和时间格式
- r - 处理从 R 到 Tableau 的数据帧返回的最佳方法是什么
- python - Python 多张表导出为 csv
- java - 我以编程方式确定 Java 中的操作系统?
- javascript - 如何使用 useEffect 挂钩停止自动重新渲染组件?
- audio - WebAudio 将流连接到目标不起作用
- python-3.x - 在 64 位 Windows 上的 Anaconda 4.8.3 中解码 Python 3.6 中的二维码?
- snowflake-cloud-data-platform - 选择托管雪花的云平台的性能权衡是什么?