国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

關于目錄或文章不存在的報錯代碼

izhuhaodev / 711人閱讀

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

今天整理一天的部署上線沒完成。不過晚上搞了一個目錄或者文章報錯代碼。

1、創建路由

直接將其創建在了Home前臺indexController.php主頁控制器上。

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

indexController.php文件中創建函數:

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

在創建函數后,先測試路由是否打通,打通后創建報錯視圖文件。

3、建立報錯模板

建立nothing.blade.php報錯文件。



    
        對不起,不存在!

        

        
    
    
        
對不起,不存在!

直接在地址欄中運行

blog/errors/nothing

顯示運行正常。


4、創建中間件

利用composer創建中間件:

php artisan make:middleware CheckAge

創建完成后
撰寫內容

    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、后記

在創建中間件時候,確實測試了好多代碼。
顯示看網上如何判斷空結果集。

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

其實,Eloquent已經給我們封裝幾個判斷方法。

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

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

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

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/22956.html

相關文章

  • 初次接觸ReactNative,搭建環境、調試時遇到報錯們及解決方法

    摘要:初次搭建總會碰上各種報錯以及紅黃屏報錯如果尚未搭建環境,請轉至官網搭建紅屏是程序無法正常運行,黃屏是程序可以運行但是可能存在一些潛在問題首次使用命令行工具來創建一個名為的新項目后運行后會報錯,如圖解決方法到你的已有項目中復制一份文件到 初次搭建ReactNative總會碰上各種報錯以及紅黃屏報錯如果尚未搭建環境,請轉至官網搭建https://reactnative.cn/docs/g....

    elliott_hu 評論0 收藏0
  • Source Map入門教程

    摘要:多個文件合并,減少請求數。生成的多了,表示文件的位置。轉換前的所有變量名和屬性名。自從年雙十一正式上線,累計處理了億錯誤事件,得到了金山軟件等眾多知名用戶的認可。 部署前端之前,開發者通常會對代碼進行打包壓縮,這樣可以減少代碼大小,從而有效提高訪問速度。然而,壓縮代碼的報錯信息是很難Debug的,因為它的行號和列號已經失真。這時就需要Source Map來還原真實的出錯位置了。 sho...

    archieyang 評論0 收藏0
  • [譯] Plaid 應用遷移到 AndroidX 的實踐經歷

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

    番茄西紅柿 評論0 收藏0
  • Django搭建個人博客:日志記錄

    摘要:每一條日志記錄也包含級別,代表對應消息的嚴重程度。即格式化器,主要功能是確定最終輸出的形式和內容。最好是日志能夠按自然天進行記錄和分割。 上一章學習了自動化測試,很好,現在我們可以絞盡腦汁寫出一份全面的測試,來保證代碼永遠健康了。 話雖如此,但是作為一個獨立開發者很難寫出真正全面的測試代碼。這是因為用戶在使用你的網站時可不會循規蹈矩,而是會以各種怪異的姿勢瀏覽網頁、上傳數據。但這也不是...

    Lowky 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<