我正在嘗試將 Laravel 5.8 Eloquent 與自定義函數(shù)和原始 sql 一起使用我有一張桌子Question(id integertitle stringdescription text)以及控制器中的此功能public function index(){ // go to the model and get a group of records //$question = Question::orderBy('id', 'desc')->paginate(3); $question = Question::selectRaw(DB::raw('id,title,SUBSTRING(description,0,10) as description')) ->orderByDesc('id') ->paginate(3); return view('questions.index')->with('questions', $question);}我的目標(biāo)是將分頁(yè)與數(shù)據(jù)庫(kù)函數(shù)一起使用,如上面的示例。查詢有效,分頁(yè)有效,返回 3 列id,title但description描述為empty。組裝查詢的正確方法是什么?下面是轉(zhuǎn)儲(chǔ)[original:protected] => Array ( [id] => 20 [title] => text [description] => )
1 回答

寶慕林4294392
TA貢獻(xiàn)2021條經(jīng)驗(yàn) 獲得超8個(gè)贊
你不需要selectRaw(DB::raw(''))
,只需selectRaw('')
:
public?function?index(){ ????$question?=?Question::selectRaw('id,?title,?SUBSTRING(description,?1,?10)?AS?description')) ????????->orderByDesc('id') ????????->paginate(3); ????????????return?view('questions.index')->with('questions',?$question); }
更新:
我剛剛查看 MySql 文檔,看到了這個(gè):
?A?value?of?0?for?pos?returns?an?empty?string.
你應(yīng)該做這個(gè):
SUBSTRING(description,?1,?10)
這里的問(wèn)題與 Laravel 無(wú)關(guān),是對(duì) MySql 用法的誤解。
我想這就能解決空的問(wèn)題了!
- 1 回答
- 0 關(guān)注
- 148 瀏覽
添加回答
舉報(bào)
0/150
提交
取消