如何通过路由传递数据并分配给laravel中的文本框?

How to pass data through route and assign to text box in laravel?

我想通过路由传递数据,然后分配给 modal 弹出窗口中的编辑文本框。

我的控制器代码是:

public function edit($id) {
    $abc = property_type::find($id);
    return redirect('/admin/property-type')->with('popup','open');
}

Popup是打开模态弹出窗口。 $abc 具有三个值:ID、名称和描述。我想用两个不同的文本框分配描述和名称:

<input type="text" class="form-control" value="{{Session::get('abc')}}" name="update_prop_name" >
<input type="text" class="form-control" value="{{Session::get('abc')}}" name="update_prop_desc" >

改用会话

 public function edit($id)
 {
        $abc=property_type::find($id);
        session("abc",$abc);
        session("popup","open");
        return redirect('/admin/property-type');
 }

并获取会话值

  $abc = session("abc");

我没有看到您将 abc 设置为会话的任何地方,因此 value="{{ Session::get("abc") }} 将是 null

将此添加到您的 edit 函数中:

public function edit($id){
  $abc = property_type::find($id);
  session()->put("abc", $abc);
  return redirect("/admin/property-type")->with(["popup" => "popup"]);
}

此外,使用 session()->get("abc") 将 return 整个对象,而不是特定的 属性。可能要调整为:

<input type="text" class="form-control" value="{{ session::get("abc") ? session()->get("abc")->name : "" }}" name="update_prop_name" />
<input type="text" class="form-control" value="{{ session::get("abc") ? session()->get("abc")->description : "" }}" name="update_prop_desc" />

注意:三元运算符 ? 也将处理 session()->get("abc") returning null