2 回答

TA貢獻1804條經驗 獲得超2個贊
我假設你想格式化你的雄辯屬性?看看https://laravel.com/docs/5.8/eloquent-mutators
如果您不想將格式化的數據保存在 db 上。您可以通過定義訪問器來使用它。例如,請參見下文
// on your model you just need to create new methods
// with `get` as prefix and `Attribute` as suffix
public function getBbcToHtmlAttribute() {
return myMethod($query->desc);
}
請注意,get并且Attribute在您的方法名稱上是必需的(例如 getMyNewAccessorAttribute`
之后,您需要添加casts屬性。如果您已經有 casts 屬性,則只需將其添加到數組中,如果您沒有 casts 屬性,則需要定義它。
protected $casts = [
'BbcToHtml'
];
然后您可以在模型實例的任何位置使用它。
$query = Posts::find(1);
$desc = $query->bbctohtml;

TA貢獻1804條經驗 獲得超3個贊
正如 MarkB 所說,您需要使用一個 mutator,創建一個可以接受任何輸入并為您的 bbcode 生成正確 html 代碼的輔助類。然后你會在你的模型上創建一個 mutator 并使用它而不是 bbcode 文本所在的字段。
- 2 回答
- 0 關注
- 168 瀏覽
添加回答
舉報