octobercms - 试图从模型中获取价值。十月cms
问题描述
我想将一个模型的记录检索到下拉列表中中继器中的另一个模型中。我必须建模一个是POST,另一个是BLOCK,块模型的记录显示在后端post模型的中继器内的下拉列表中,并将其保存到post模型中
发布yaml
repeater_data:
label: Repeater
prompt: 'Add new item'
maxItems: '5'
span: full
type: repeater
form:
fields:
blocks:
label: Dropdown
span: full
type: dropdown
options: blocksToAdd
post.php模型
protected $jsonable = ['blocks'];
public function blocksToAdd()
{
$blocks = Block::pluck('title');
//$jenkebOptions= [''];
foreach ($blocks as $item) {
// json decoding
$decoded = json_decode($item, true);
$jenkebOptions[] = $decoded;
log::info($decoded);
}
return $jenkebOptions;
}
谢谢....
解决方案
不知道你为什么需要json_decode
或者我错过了什么
在正常情况下,您需要返回values and title
对数组
public function blocksToAdd()
{
return Block::pluck('title','id');
}
这样做它会返回数组
[1 => 'title 1', 2 => 'title 2']
现在在下拉标题[title] 中分别可见它的 value[id]
如果您需要将标题作为值 ind 基础,那么您可以这样做
public function blocksToAdd()
{
$blockTitles = Block::pluck('id','title');
$blockTitlesArray = [];
foreach($blockTitles as $title) {
$blockTitlesArray[$title] = $title;
}
return $blockTitlesArray;
}
如有任何疑问,请发表评论。
推荐阅读
- algorithm - 有人可以向我解释 Hoare 的分区方案吗?
- thymeleaf - 如何在 Thymeleaf 的列表中检查 isEmpty?
- javascript - 三个js,ammo js和Ruby on Rails
- sql - Databricks SQL - 间隔中的最大同时事件计数
- python - 如何通过在python上的表中获取其他两行的百分比来创建新行
- python - R 与 Python 中的 POST 请求
- excel - 基于单个字段合并 Excel 行
- node.js - Sockets.io 问题:WebSocket 在建立连接之前关闭
- sql-server - 使用 SQL 服务器数据库 VB.Net 中的数据自动填充组合框
- html - 选项卡内容未显示在固定位置