【问题标题】:How to display textbox value dynamically which is get from database using laravel如何动态显示使用 laravel 从数据库获取的文本框值
【发布时间】:2015-03-18 10:22:41
【问题描述】:

我从数据库中获取了值,然后我需要将这些值设置为文本框。我创建了一个控制器文件,其方法名称为 edit 如下所示

userdata.blade.php:

 public function edit($id)
{
        echo "You have clicked edit link".$name;
        $editdata = DB::table('newuser')->where('Id','=',$id)->get();
        return View::make('editdata',array('list' => $editdata));
}

我已将值数组作为参数传递给视图文件。现在我需要将名称的值显示到文本框。如何使用 laravel 在 html 页面中执行此操作。我的html页面如下所示

editdata.blade.php:

 <html>
   <head></head>
   <body>
     <div>
       {{Form::open(array('url' => 'login', 'method' => 'post'))}}
         {{Form::label('name','Name',array('id'=>'label-name'))}}
         {{Form::text('name',{{$list->Name}}}}
       {{ Form::close() }}
    </div>
    </body>
  </html>

谁能告诉我我做错了什么。提前谢谢

【问题讨论】:

    标签: php mysql laravel blade


    【解决方案1】:

    get() 返回一个集合(多行)而不是模型本身。您可以使用User::find($id),它使您可以直接访问具有指定 ID 的模型。

    不使用 eloquent 时,只需将 get() 替换为 first()

    【讨论】:

      【解决方案2】:

      只需去掉大括号,你已经在“内部”PHP 代码并且不需要它们:

      {{ Form::text('name',$list->Name) }}
      

      您还可以从控制器中获得一个您可能想要做的集合:

      $editdata = DB::table('newuser')->where('Id','=',$id)->first();
      

      甚至:

      $editdata = DB::table('newuser')->find($id);
      

      【讨论】:

        猜你喜欢
        • 2013-07-11
        • 2012-01-04
        • 1970-01-01
        • 1970-01-01
        • 2023-03-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多