无法从数据库中回显用户数据-说“属性[id]不存在”

毒液

我一直在尝试解决此错误已有将近2天。不用说,我对Laravel还是很陌生。我正在使用Laravel的注册表(进行了一些修改),并将该User数据存储在数据库中名为“ customusers”的表中。该数据包括其名称/电子邮件/性别/描述等。我正在尝试使用资源控制器来基本上打印和编辑该数据。我面临的问题是,每当我尝试在主页上回显数据时,都会出现错误“此集合实例中不存在属性[id]”或电子邮件/名称。但是,当我使用Auth :: user()-> id回显数据时,它可以工作。很好,如果我只想回显数据,那是可行的。但是我也想编辑这些数据,我将不得不使用我的模型。所以下面是我的代码:

Display.blade.php:

<div id="wrapper">

<div id="content">
  <div id="card">
    <div id="front">
      <div id="top-pic"></div>
    <div id="avatar"><span style="position: absolute;padding-top: 17px;margin-left: 34px;color:  #fff;font-size:  64px;" class="h5">
        {{ Auth::user()->name[0] }}
    </span></div>
      <div id="info-box">
        <div class="info">
          <h1>{{ Auth::user()->name }}</h1>
          <h2>{{ Auth::user()->message }}</h2>
        </div>
      </div>
      <div id="social-bar">
        <a href="{{ Auth::user()->facebook }}" target="_blank">
          <i class="fa fa-facebook"></i>
        </a>
        <a href="{{ Auth::user()->twitter }}" target="_blank">
        <i class="fa fa-twitter"></i>
        </a>
        {{ link_to_route('display.edit','',[$customusers->id],['class'=>'fa fa-edit']) }}

      </div>
    </div>

Edit.blade.php:

{!! Form::model($customusers,array('route'=>['display.store',$customusers->id],'method'=>'PUT')) !!}
            <div class="form-group">
                    {!! Form::text('name',null,['class'=>'form-control','placeholder'=>'Name']) !!}
             </div>
            <div class="form-group">
                    {!! Form::email('email',null,['class'=>'form-control','placeholder'=>'Email']) !!}
            </div>
                <div class="form-group form-row">
                        <div class="col-5">
                                {!! Form::select('gender', ['Male' => 'Male', 'Female' => 'Female'], null, ['class'=>'form-control','placeholder'=>'Choose Gender']); !!}
                        </div>
                        <div class="col">
                                {!! Form::text('facebook',null,['class'=>'form-control','placeholder'=>'Facebook ID']) !!}
                        </div>
                        <div class="col">
                                {!! Form::text('twitter',null,['class'=>'form-control','placeholder'=>'Twitter Handle']) !!}
                        </div>
                </div>
                <div class="form-group">
                        {!! Form::textarea('message',null,['class'=>'form-control','placeholder'=>'Talk about yourself']) !!}
                </div>
                <div class="form-group">
                        {!! Form::button('Create',['type'=>'submit','class'=>'btn btn-danger col-lg-12']) !!}
                </div>
                {!! Form::close() !!}

ProfileController.php

<?php

namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\CustomUser;
use Illuminate\Support\Facades\DB;


class ProfileController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        $customusers = CustomUser::all();
        return view ('display',compact('customusers'));
}

/**
 * Show the form for creating a new resource.
 *
 * @return \Illuminate\Http\Response
 */
public function create()
{
   //
}

/**
 * Store a newly created resource in storage.
 *
 * @param  \Illuminate\Http\Request  $request
 * @return \Illuminate\Http\Response
 */
public function store(Request $request)
{
    //
}

/**
 * Display the specified resource.
 *
 * @param  int  $id
 * @return \Illuminate\Http\Response
 */
public function show($id)
{
    //
}

/**
 * Show the form for editing the specified resource.
 *
 * @param  int  $id
 * @return \Illuminate\Http\Response
 */
public function edit(CustomUser $customusers) 
{
    return view ('edit',compact('customusers'));
}

/**
 * Update the specified resource in storage.
 *
 * @param  \Illuminate\Http\Request  $request
 * @param  int  $id
 * @return \Illuminate\Http\Response
 */
public function update(Request $request, CustomUser $customusers)
{
    $customusers->update($request->all());
    return redirect()->route('display.index');
}


/**
 * Remove the specified resource from storage.
 *
 * @param  int  $id
 * @return \Illuminate\Http\Response
 */
public function destroy($id)
{
    //
}
}

CustomUser.php(模型):

   <?php

namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;

class CustomUser extends Authenticatable
{
    use Notifiable;

    protected $table = 'customusers';

    /**
     * The attributes that are mass assignable.
     *
     * @var array
     */
    protected $fillable = [
        'name','username','email','gender','password','message','twitter','facebook',
    ];

    /**
     * The attributes that should be hidden for arrays.
     *
     * @var array
     */
    protected $hidden = [
        'password', 'remember_token',
    ];
}

Web.php(路由):

    Route::get('/', function () {
    return view('welcome');
});

Auth::routes();

Route::resource('/display','ProfileController');

如您所见,我正在使用compact in index()函数将数据库中的所有用户数据提供给它,而当我dd($ customusers)时,它确实向我显示了数组中的数据。但是,当我使用{{$ customusers-> name}}时,它给我一个错误,指出“此集合实例不存在属性[name]”。因此,每当我尝试link_to_route('display.edit','',[$customusers->id],'')用于将用户重定向到“编辑”页面时,都会发生同样的情况请帮助我看看我在做什么错。我以前制作过一个CRUD应用程序,基本上我做了同样的事情,而且一切都很好。所以我不明白这里是什么问题。

波尔多

您需要循环客户数据:

@foreach($customusers as $customer)
 {{ link_to_route('display.edit','',[$customer->id],['class'=>'fa fa-edit']) }}
@endforeach

或者,您可以编辑当前登录的数据。

{{ link_to_route('display.edit','',[Auth::user()->id],['class'=>'fa fa-edit']) }}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将用户数据库连接保存在我的数据库中

来自分类Dev

Firebase 实时用户数据库中在不存在的根上设置的侦听器的有效性

来自分类Dev

PHP MYSQL Cant只能从ID和名称中获取要从数据库中提取的用户数据

来自分类Dev

Django:检查实例是否存在于用户数据库中并保存到App模型数据库中

来自分类Dev

Debian 9.3-Untar无法说文件不存在

来自分类Dev

从ID的对象数组中获取用户数据

来自分类Dev

对象中不存在静态属性

来自分类Dev

服务中的类型不存在属性

来自分类Dev

Neo4j Match语句包含数据库中不存在的属性

来自分类Dev

获取数据库中不存在的数据

来自分类Dev

SQL-从输入中返回数据库中不存在的ID

来自分类Dev

OperationalError:数据库不存在

来自分类Dev

严重:数据库不存在

来自分类Dev

数据库不存在

来自分类Dev

选择表中不存在的ID

来自分类Dev

选择表中不存在的ID

来自分类Dev

Entity Framework Core Linq 查询返回数据库中不存在的 ID

来自分类Dev

RLMException:无法使用不兼容的类型但不存在的属性'id'保留

来自分类Dev

angular2-datagrid 属性“id”在类型字符串中不存在

来自分类Dev

如果数据库中不存在某些内容

来自分类Dev

如果FuelPHP中不存在,则创建数据库

来自分类Dev

数据库DNN中不存在域名

来自分类Dev

忽略数据库中不存在的列

来自分类Dev

adduser说该用户不存在时该用户存在

来自分类Dev

adduser说该用户不存在时该用户存在

来自分类Dev

数据不存在

来自分类Dev

如果数据库中不存在用户,则显示一条消息

来自分类Dev

删除Python中可能存在或不存在的字典属性

来自分类Dev

删除Python中可能存在或不存在的字典属性

Related 相关文章

热门标签

归档