私は、必要な都市、例えば、「London.blade.php」、「Paris.blade.php」のような地図があるサイトで作業しています。 私はサイト上で検索バーを実装しようとしていますが、ビューの内容ではなく結果としてビュー(blade.phpページ)を返す必要があります。 たとえばwhere('views', 'LIKE', "%$search_query%")
。ビューがデータベースに格納されていないため実際に可能ですかLaravelのビューを検索する
答えて
指定した拡張子のファイルを一覧表示する汎用関数です(この場合は.blade.php
)。 $path
で検索を開始し、見つかったサブディレクトリを再帰的に検索します。
function findFileExtension_r($extension, $path, &$names = array()){
$files = array_diff(scandir($path), array('..', '.'));
foreach($files as $f){
$abs_path = $path.'/'.$f;
if(is_dir($abs_path)){ //directory, recurse
findFileExtension_r($extension, $abs_path, $names);
} else { //file, test if the name ends with $extension
$ext_length = strlen($extension);
if(substr($f, -$ext_length) === $extension){
$names[] = $f;
}
}
}
}
使用法:
//set up some values
$find = '.blade.php';
$path = 'path/to/laravel/resources/views';
//$blade_templates = array(); //can be initialized, or named in the function call below.
//call function
findFileExtension_r($find, $path, $blade_templates);
//output
echo '<h2>Results</h2><pre>' . print_r($blade_templates, true) . '</pre>';
あなたは実際にはデータベース内のブレード・テンプレートを保存し、SQLを経由して、それらを照会できます。https://github.com/delatbabel/viewpages
ビューはDBに格納されていない場合、あなたはよルート内のビューを指し示す必要があり、動的ルートを使用することができます。
Route::get('/{slug}', array('as' => 'page.show', 'uses' => '[email protected]'));
ショー機能:あなたはすべてのfoo.blade.phpファイル名を読み取るために再帰関数を書くことができ
public function show()
{
$slug = input::get('location');
$page = page::whereSlug($slug)->get();
return View::make('pages')->with('page', $page);
}
こんにちは、私はそれが何か間違っているようです「[Route:page.show] [URI:countries/{canada}]の必須パラメータがありません(表示:/Users/ccg/testsite/resources/views/layouts/app.blade.php)」というエラーが発生します。 ...これは私がルート "Route :: get( 'countries/{canada}'、array( 'as' = '' page.show '、' uses '=>' PageController @ show '))です。 ; "検索ボックスには
待ってください。なぜそれは '{カナダ}'ですか?そのフォルダには何が入っていますか? –
私は "countries"という名前のメインビューフォルダを持っています。その中には、カナダのような各国のサブフォルダがあり、カナダのフォルダ内にindex.blade.phpファイルと他の都市があります。 "Route :: get( '/ {slug}'")を使用すると、同じエラーがスローされます。[Route:page.show] [URI:{slug}]の必須パラメータがありません。それはRoute :: get( '/ slug'、array( 'as' => 'page.show'、 'uses' => 'PageController @ show')));しかし、 "Class 'App \ Http \コントローラー\ページ 'が見つかりません " – ccg
- 1. Laravel検索ロジックの問題
- 2. トレンド検索クエリ - Laravel Eloquent
- 3. Laravel(php)save検索オプション
- 4. 使用製品検索Laravel
- 5. algolia laravel pluggin(optionaly)の属性で検索
- 6. Drupalのビューの検索
- 7. フォースアクションバーを表示する検索ビュー
- 8. ビューからデータベースを検索
- 9. Drupalビューの "like"パターン検索
- 10. バターナイフバインドメニューからの検索ビュー
- 11. Laravel検証でグローバル検索を含める
- 12. Laravel:ビュー
- 13. GUIDによるSharePointビューの検索
- 14. laravelで検索機能を作成する
- 15. SQL 2005ビューの作成者の検索
- 16. MonoTouch.Dialogを使用した検索ビュー
- 17. 検索オプションに応じて異なるビューを持つDjango検索メカニズム
- 18. Android 3.0 honeycombアクションバーの検索ビュー
- 19. asp.net mvcビューの検索と編集
- 20. Swagger UI Webページの検索ビュー
- 21. ビュー・ディレクトリのビュー "index"を検索できませんでした
- 22. laravelで関数検索を実装しています
- 23. laravel 5のbelongsToMany関係で検索しています
- 24. laravel Bladeでビューをネストする
- 25. php Laravel Ajaxは、ビュー
- 26. Laravelのビューの復帰()
- 27. 剃刀ビューの検索入力/テキストボックスの日付検証MVC
- 28. Laravel検索機能が出力を出さない
- 29. Eclipseデバッグパースペクティブ:変数ビューで値を検索する方法
- 30. カスタム検索ビューを作成するには?
は/リソース/ビューとサブフォルダ中に存在し、配列にそれらを押してください。 – larsAnders
こんにちは、私はあまりにもPHPに精通していないので、私は少し失われています、 'foo.blade.php'?...あなたが私に教えてくれる例はありますか? @IarsAnders – ccg
これを見て、laravelのすべてのビューを返す方法を見てください - http://laravel-tricks.com/tricks/show-all-available-views – codenathan