【问题标题】:i want to send data from one view to another Laravel view我想将数据从一个视图发送到另一个 Laravel 视图
【发布时间】:2019-09-30 04:21:08
【问题描述】:

我有两个视图,视图 1 和视图 2。

  • view-1 有表单,可以临时存储数据。
  • 我想从 view-1 获取数据并将其发送到具有用户配置文件的 view-2,其中包含来自 view-1 将显示。
  • 我们如何在 Laravel 中实现它,我知道我们可以在 SQL 中存储数据 然后获取它,但是如何在不存储到 SQL 的情况下执行它。

我的代码: 查看:1

<form >
  <div class="form-group">
    <label class="col-form-label" >Date</label>
    <input type="text" name="sdate" class="form-control">
    <input type="submit"  class="btn btn-primary" value="Add date" >
  </div>
</form>

查看 2 控制器:

public function report2($id)
{
$teacher = Teacher::teacher($id);
return View('teachers.report2' ,compact('teacher','today','sdate'));
}

路线:

Route::get('teachers/{id}/report2', 'TeachersController@report2');

【问题讨论】:

  • 获取请求数据并使用compact传递请求数据
  • 我猜我们无法通过控制器获取请求数据;公共函数report2($id)
  • 我们可以使用 request()->all();
  • 两个视图都有不同的控制器。
  • 不是问题请在deep中描述 dd(request()->all());

标签: laravel laravel-routing


【解决方案1】:

我可以使用简单的 php 来做到这一点; 在视图 1 中,我添加了以下代码:

<form action="report2"  method="get">
  Date: <input type="text" name="today" placeholder="Date of Birth"  class="datepicker form-control"><br>
  <input type="submit">
</form>

Laravel 视图 2:

<?php echo $_GET["today"]; ?><br>

【讨论】:

    【解决方案2】:

    使用会话,例如在 view1 中,您传递日期变量在视图 1 的控制器上执行此操作

    session(['sdate' => $request->sdate]);
    

    然后你就可以在你的控制器或视图中通过调用这个来获取会话的值

    $date = session('sdate');
    

    进一步阅读见docs

    【讨论】:

    • 你能告诉我在哪里写吗? session(['sdate' => $request->sdate]);在我上面的代码中。我们还需要提交表格吗?
    • 当我在我的控制器中添加你的代码时;公共函数report2($id),我得到错误ID丢失。
    • put session(['sdate' => $request->sdate]);在您的表单对 view1 的操作上,您可以调用 $date = session('sdate');直接在view2上
    • 我添加了; session(['sdate' => $request->sdate]);但是当我点击提交时,它没有打开所需的视图。
    猜你喜欢
    • 1970-01-01
    • 2015-10-23
    • 1970-01-01
    • 2021-11-09
    • 1970-01-01
    • 1970-01-01
    • 2015-04-26
    • 2020-03-28
    • 1970-01-01
    相关资源
    最近更新 更多