2014-10-02 83 views
0

我做了一個下拉列表,它從數據庫的'oneways'表上取'destination-from'值。這裏按照本教程:http://www.laravel-tricks.com/tricks/easy-dropdowns-with-eloquents-lists-methodLaravel 4下拉列表

但每當我嘗試運行它,它給了我這樣那樣的錯誤:未定義的變量:類什麼,似乎這裏是什麼問題?我對此很新。 laravel的新手。

這裏是我的代碼:

onewayflight.blade.php

$categories = Category::lists('destination-from', 'title'); 
     {{ Form::select('category', $categories) }} 

onewayflightcontroller.php

public function onewayflightresults() 
{ 
    return View::make('content.onewayflight'); 

    $list = DB::table('oneways'); 
    $listname = Oneways::lists('destination-from'); 

    $content = View::make('content.onewayflight', array('list'=>$list, 'listname'=>$listname)); 
} 

我真的不知道什麼,我已經離開了一個這個。我也想知道模型是否與此有關?

回答

0

您在提取類別的模板中的代碼需要被PHP標籤包圍,否則它將不會被執行。但更好的是 - 把它移到你所在的控制器上。

同樣在你的控制器中,你返回onewayflight()的頂部視圖 - 在執行這個操作後沒有任何東西。

因此改變它的工作的工作是這樣,你應該確定:

onewayflight.blade.php

{{ Form::select('category', $categories) }} 

onewayflightcontroller.php

public function onewayflight() 
{ 
    $categories = Category::lists('destination-from', 'title'); 

    return View::make('content.onewayflight', array('categories' => $categories)); 
    } 

此外,在routes.php文件中路線應該如下所示:

Route::get('/your-route-path', [ 
    'as' => 'your_route_name', 
    'uses' => '[email protected]' 
]); 
+0

感謝您的快速回復先生。 嘗試將此更改爲您的建議解決方案,但最終出現此錯誤:未定義變量:類別 – staphhelpme 2014-10-02 16:34:23

+0

我已更新它,現在嘗試。確保你還沒有返回onewayflight()的第一行視圖。 – jd182 2014-10-02 16:37:09

+0

先生,仍然有同樣的結果。該錯誤鏈接到刀片模板。 – staphhelpme 2014-10-02 16:39:30

0

除了@ jd182的建議(因爲我缺乏評論的聲望,我使用答案);你確定list()函數/ facade會返回除null以外的值。 PHP有時會將null的值視爲未定義。

而您的刀片語法錯誤。如果你想在一個刀片文件中定義一個變量(不建議),你應該將它包裝在標籤中,並將其作爲普通的php文件工作。

+0

謝謝您的提示先生。 – staphhelpme 2014-10-02 17:28:06