2015-04-14 96 views
1

我是Laravel 5的新手,但我已經嘗試過Laravel 4.有人能給我提供這種情況的建議,我有一個註冊頁面,所以我只是使用了Laravel的內置註冊模塊/ AUTH /註冊/。問題是我以狀態,地區,地區,城市的形式添加了一些下拉列表。Laravel 5依賴下拉列表方法

區域將具有的值列表取決於選定的狀態,然後區域的列表值取決於區域的選定值,最後是城市的列表值取決於選定的區域值。

我本來可以使用JavaScript做到這一點,但當涉及到框架,我該怎麼做?假設我將把我的JavaScript放在註冊視圖上,那麼對於區域,區域和城市的數據庫查詢如何?我應該從哪裏調用這個模型的查詢?我打賭你會說我在控制器上調用查詢,然後將它作爲參數傳遞,因爲它呈現視圖,但在Laravel 5中,註冊頁面的渲染位於

C:\ wamp \ www \ laravel \供應商\ laravel \框架的\ src \照亮\基金會\身份驗證\ AuthenticatesAndRegistersUsers.php

與代碼:

public function getRegister() 
{ 
    return view('auth.register'); 
} 

但它不會讓我做這件事:

public function getRegister() 
{ 
    $regions = with(new Regions)->getRegions(); 
    return view('auth.register')->with('regions', $regions); 
} 

如果一世 在我的視圖中訪問$ regions變量,它會說未定義。 那麼我該如何做到這一點?或者什麼是更好的方法?謝謝

+0

使用Ajax請求。定義路由並使用'list'生成'html'。 –

回答

1

我會做一些像下面,這給你可以在Form :: select項目列表中使用的區域數組。如果您看到$ region在視圖中爲空,那麼您可以嘗試使用dd($ regions)或dd(view('auth.register')->with('regions', $regions))進行調試。這些dd()調用將顯示值是否正確,並設置$ regions。

順便說一句,如果是區域模型,然後約定說,你應該用單數形式,而不是區地區

public function getRegister() 
{ 
    $regions = Region::lists("name", "id"); 
    return view('auth.register')->with('regions', $regions); 
}