[英]Broadcast retrieved results from DB with accessors to socket.io or javascript
問題:我無法在Laravel 5.4的javascript文件中檢索訪問器參數
場景:
在App/SomeModel.php
我正在使用App/SomeModel.php
對檢索到的數據進行操作。
根據優先級編號,我為引導樣式指定了正確的類名稱。
/**
* Gets corresponding class name based on priority level.
*
* @return string
*/
public function getPriorityClassAttribute(): string
{
switch ($this->priority) {
default:
return '';
case 1:
return 'info';
case 2:
return 'success';
case 3:
return 'warning';
case 4:
return 'danger';
}
}
然后,我可以在應用程序的任何位置訪問$somedata->priority_class
。
但是我無法將這些數據傳遞給javascript中的偵聽器。 我不知道如何將其添加到數據對象中。
這是我的事件廣播器中的var_dump()
:
#attributes: array:2 [
"priority" => 2
"id" => 128
]
如果我想$somedata->priority_class
為什么沒有priority_class
起作用呢?
有小費嗎 ?
得到它了! 我要做的就是在protected $appends
數組中插入一個屬性;
/**
* Append accessors to JSON response
*
* @var array
*/
protected $appends = [
'priority_class'
];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.