成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

關(guān)于目錄或文章不存在的報(bào)錯(cuò)代碼

izhuhaodev / 718人閱讀

摘要:今天整理一天的部署上線沒完成。不過晚上搞了一個(gè)目錄或者文章報(bào)錯(cuò)代碼。創(chuàng)建控制器在文件中創(chuàng)建函數(shù)在創(chuàng)建函數(shù)后,先測試路由是否打通,打通后創(chuàng)建報(bào)錯(cuò)視圖文件。參考在判斷取出的結(jié)果集是否為空和中表明

今天整理一天的部署上線沒完成。不過晚上搞了一個(gè)目錄或者文章報(bào)錯(cuò)代碼。

1、創(chuàng)建路由

直接將其創(chuàng)建在了Home前臺(tái)indexController.php主頁控制器上。

Route::get("/errors/nothing","HomeindexController@nothing");
2、創(chuàng)建控制器

indexController.php文件中創(chuàng)建函數(shù):

    public function nothing()
    {
        return view("errors.nothing");
    }

在創(chuàng)建函數(shù)后,先測試路由是否打通,打通后創(chuàng)建報(bào)錯(cuò)視圖文件。

3、建立報(bào)錯(cuò)模板

建立nothing.blade.php報(bào)錯(cuò)文件。



    
        對(duì)不起,不存在!

        

        
    
    
        
對(duì)不起,不存在!

直接在地址欄中運(yùn)行

blog/errors/nothing

顯示運(yùn)行正常。


4、創(chuàng)建中間件

利用composer創(chuàng)建中間件:

php artisan make:middleware CheckAge

創(chuàng)建完成后
撰寫內(nèi)容

    public function handle($request, Closure $next)
    {
        $_arti=Article::where("art_id",$request->art_id)->find($request->art_id);
        if (!$_arti){
            return redirect("errors/nothing");
        }
        return $next($request);
    }
5、在路由上增加中間件功能
Route::get("/a/{art_id}","HomeIndexController@article")->middleware("checkArt");

測試通過。


6、后記

在創(chuàng)建中間件時(shí)候,確實(shí)測試了好多代碼。
顯示看網(wǎng)上如何判斷空結(jié)果集。

即使取到的空結(jié)果集, Eloquent仍然會(huì)返回IlluminateDatabaseEloquentCollection對(duì)象實(shí)例。這個(gè)我曾經(jīng)也測試過,確實(shí)dd()測試之后含有結(jié)果集輸出,只是輸不了數(shù)據(jù)庫中的字段內(nèi)容,所以采用if()字段判斷時(shí),依然失效。

其實(shí),Eloquent已經(jīng)給我們封裝幾個(gè)判斷方法。

$result = Model::where(...)->get();
//不為空則
if ($result->first()) { } 
if (!$result->isEmpty()) { }
if ($result->count()) { }

但是使用->get()顯示這是一個(gè)無定義字段,后來發(fā)現(xiàn)find()可以使用,具體原因待好好看手冊(cè)再分析。

參考:
在Laravel Eloquent 判斷取出的結(jié)果集是否為空http://www.cnblogs.com/wuoshi...和Eloquent collection: counting and detect empty http://stackoverflow.com/ques...中表明:

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/22956.html

相關(guān)文章

  • 初次接觸ReactNative,搭建環(huán)境、調(diào)試時(shí)遇到報(bào)錯(cuò)們及解決方法

    摘要:初次搭建總會(huì)碰上各種報(bào)錯(cuò)以及紅黃屏報(bào)錯(cuò)如果尚未搭建環(huán)境,請(qǐng)轉(zhuǎn)至官網(wǎng)搭建紅屏是程序無法正常運(yùn)行,黃屏是程序可以運(yùn)行但是可能存在一些潛在問題首次使用命令行工具來創(chuàng)建一個(gè)名為的新項(xiàng)目后運(yùn)行后會(huì)報(bào)錯(cuò),如圖解決方法到你的已有項(xiàng)目中復(fù)制一份文件到 初次搭建ReactNative總會(huì)碰上各種報(bào)錯(cuò)以及紅黃屏報(bào)錯(cuò)如果尚未搭建環(huán)境,請(qǐng)轉(zhuǎn)至官網(wǎng)搭建https://reactnative.cn/docs/g....

    elliott_hu 評(píng)論0 收藏0
  • Source Map入門教程

    摘要:多個(gè)文件合并,減少請(qǐng)求數(shù)。生成的多了,表示文件的位置。轉(zhuǎn)換前的所有變量名和屬性名。自從年雙十一正式上線,累計(jì)處理了億錯(cuò)誤事件,得到了金山軟件等眾多知名用戶的認(rèn)可。 部署前端之前,開發(fā)者通常會(huì)對(duì)代碼進(jìn)行打包壓縮,這樣可以減少代碼大小,從而有效提高訪問速度。然而,壓縮代碼的報(bào)錯(cuò)信息是很難Debug的,因?yàn)樗男刑?hào)和列號(hào)已經(jīng)失真。這時(shí)就需要Source Map來還原真實(shí)的出錯(cuò)位置了。 sho...

    archieyang 評(píng)論0 收藏0
  • [譯] Plaid 應(yīng)用遷移到 AndroidX 的實(shí)踐經(jīng)歷

    摘要:它是對(duì)的重大改進(jìn)和全面替代方案。一個(gè)更直接的方法是開始遷移,并且檢查可能出現(xiàn)的報(bào)錯(cuò)。遷移工具位于菜單欄的選項(xiàng)。這個(gè)選項(xiàng)將遷移整個(gè)項(xiàng)目的所有模塊。中的遷移工具是遷移的主要方式。遷移應(yīng)用變更最少的代碼以保證應(yīng)用可以仍能正常運(yùn)行。 原文地址:Cross-stitching Plaid and AndroidX 原文作者:Tiem Song 譯文出自:掘金翻譯計(jì)劃 本文永久鏈接:github.co...

    番茄西紅柿 評(píng)論0 收藏0
  • Django搭建個(gè)人博客:日志記錄

    摘要:每一條日志記錄也包含級(jí)別,代表對(duì)應(yīng)消息的嚴(yán)重程度。即格式化器,主要功能是確定最終輸出的形式和內(nèi)容。最好是日志能夠按自然天進(jìn)行記錄和分割。 上一章學(xué)習(xí)了自動(dòng)化測試,很好,現(xiàn)在我們可以絞盡腦汁寫出一份全面的測試,來保證代碼永遠(yuǎn)健康了。 話雖如此,但是作為一個(gè)獨(dú)立開發(fā)者很難寫出真正全面的測試代碼。這是因?yàn)橛脩粼谑褂媚愕木W(wǎng)站時(shí)可不會(huì)循規(guī)蹈矩,而是會(huì)以各種怪異的姿勢瀏覽網(wǎng)頁、上傳數(shù)據(jù)。但這也不是...

    Lowky 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<