如何在laravel php中将变量从视图传递到控制器而没有形式

时间:2017-02-27 12:01:37

标签: php laravel orm eloquent

我在视图文件夹中有这些值。 .blade文件是

@foreach($nam as $ergebnisse)
<h3>Id:{{$ergebnisse->id}}
Name_Id:{{$ergebnisse->name_id}}
Geometrie_Id:{{$ergebnisse->geometrie_id}}
</h3>
<h3>

  <li>{{$ergebnisse->probe}}</li>
  <li>{{$ergebnisse->schnittgrosse}}</li>
  <li>{{$ergebnisse->temperatur}}</li>
  <li>{{$ergebnisse->zeit}}</li>
  <li>{{$ergebnisse->aussehen}}</li>
  <li>{{$ergebnisse->farbe}}</li>
  <li>{{$ergebnisse->deformation}}</li>
  <li>{{$ergebnisse->geruch}}</li>
  <li>{{$ergebnisse->texture}}</li>



</h3>

 @endforeach

现在我想根据这些参数进行另一个查询。那么如何将这些参数传递给控制器​​,还是有其他方法在视图中生成查询并显示它们?

1 个答案:

答案 0 :(得分:0)

你的问题不是很清楚,所以我有两种可能的解决方案:

  1. 如果您要加载其他视图,可以执行以下操作:
  2. 您可以发送带链接的参数,无需成为表格。

    所以你可以做<a href="your-url/{{$nam->id}}">Do stuff</a>

    之类的事情

    这会将$ nam对象的id发送到您喜欢的路径。

    您的路线将如下所示:

    Route::get('your-url/{$nam}', YourController@test);
    

    在你的控制器中你必须抓住这个值

    public function test(Nam $nam) {
      return $nam;
    }
    
    1. 如果您想加载相同的视图并且有2个不同的查询,请执行 在控制器内执行2个不同的查询并发送它们 通过分开。
    2. 所以在你当前的控制器中:

      public function index(){
       $nam = Nam::all();
      // this is your second query:
      $nam2 = Nam::latest()->get();
      
      return view('your-view', compact('name','nam2' //this is the second variable))
      }