0

私の目的

ラムダ ユーザー向けのシンプルな DB ナビゲーターを作成することです。このために、すべてのDB table_nameを含むサイドバーがあります

そして、ページの中央に、データが必要です。ここに私のテーブル名があります:

administratif
equipement
erreur
etablissement
interface_eth_routeur
interface_eth_switch
interface_ip_routeur
latence
mainteneur
routeur_arp
routeur_gsu
routeur_su
salle_visio
site
switch
switch_arp
switch_module

さて、コードがあります: ROUTES.PHP

Route::get('navigateur_bdd', array('uses' => 'HomeController@navigateur_bdd', 'as' => 'navigateur_bdd'));
Route::get('navigateur_bdd/{table_name}', array('uses' => 'HomeController@bdd_show_table', 'as' => 'bdd_show_table'));

ホームコントローラー.PHP

public function navigateur_bdd()
{
    $table_name = DB::select('SHOW TABLES');
    return View::make('navigateur_bdd', array('which_actif' => 3, 'table_name' => $table_name));
}

public function bdd_show_table($argument = NULL) {
    $selected_table = DB::table($argument)->get();
    $table_name = DB::select('SHOW TABLES');
    return View::make('navigateur_bdd', array('which_actif' => 3, 'table_name' => $table_name, 'selected_table' => $selected_table));
}

最初の機能は、ユーザーがこの領域に入ったときのメイン ビューです。

2 番目の関数は、ユーザーがメイン ビューのサイドバーから table_name をクリックしたときに使用されます。

NAVIGATEUR_BDD.BLADE.PHP

 <div id="sidebar-wrapper">
    <ul class="sidebar-nav" id="sidebar">   
      <li class="well">Liste des tables</li>  
      @for ($i = 0 ; $i < count($table_name); $i ++)
          <li><a href="{{ URL::to('navigateur_bdd/' . $table_name[$i]->Tables_in_MYNET)}}">{{$table_name[$i]->Tables_in_MYNET}}</a></li>
      @endfor
    </ul>
  </div>

今何が起こっているのですか? 「administratif」や「erreur」などのテーブル名をクリックすればOK

しかし、「 routeur_」のようなプレフィックスを持つテーブル名をクリックすると、エラーなしで空白のページが表示されます。 すべてのテーブルにプレフィックスがあるわけではないため、database.php にプレフィックスを設定しませんでした。

編集:プレフィックス付きのいくつかのテーブルが機能しています。すべてではありませんが、理由はわかりません...「スイッチ」プレフィックスのように:

"switch"
"switch_module"

働いているが、働いていない

"switch_arp"
routeur_su
routeur_gsu

働いているが働いていない

routeur_arp

調査した結果、多くの行 (たとえば 110 000) を持つテーブルに空白のページがあります (dd($selected_table) で試しました); したがって、これは私の質問のタイトルを変更します:これらの110 000行を変数に保存するにはどうすればよいですか?

4

1 に答える 1

0

Laravels のページネーション機能を利用できます。
データをページに分割し、各ページにアクセスするためのリンクを生成できます...

$selected_table = DB::table($argument)->paginate(100); // how many records you wan't on one page

そして、ビューでこれを実行してリンクを生成します

{{ $table_name->links() }}
于 2014-11-21T13:56:55.713 に答える