Php 显示外键

Php 显示外键,php,laravel,Php,Laravel,我有两张桌子,第一张桌子是有3个场地的俱乐部,id_club,name_club,type_sport_club,第二张桌子是有3个场地的membres,id_membre,name_membre,fk_club 在我的文件夹membres index.blade.php中,我收到一条错误消息 SQLSTATE[42S22]:未找到列:where子句中的1054 Champ'clubs.id'未知SQL:select*from clubs where.id=1 limit 1 是我忘了什么吗 &

我有两张桌子,第一张桌子是有3个场地的俱乐部,id_club,name_club,type_sport_club,第二张桌子是有3个场地的membres,id_membre,name_membre,fk_club

在我的文件夹membres index.blade.php中,我收到一条错误消息

SQLSTATE[42S22]:未找到列:where子句中的1054 Champ'clubs.id'未知SQL:select*from clubs where.id=1 limit 1

是我忘了什么吗

<div class="px-content">
    <div class="page-header">
      <div class="row">
        <div class="col-md-4 text-xs-center text-md-left text-nowrap">
          <h1><i class="px-nav-icon ion-android-apps"></i>Liste des enregistrements</h1>
        </div>
        <hr class="page-wide-block visible-xs visible-sm">
        <!-- Spacer -->
        <div class="m-b-2 visible-xs visible-sm clearfix"></div>
      </div>
    </div>
    <div class="row">
      <div class="panel">
        <div class="panel-body">
          <div class="table-responsive">
            <table class="table">
              <a class="btn btn-sm btn-success" href="{{ route('membres.create') }}">Ajouter</a>
              <thead>
                <tr>
                  <th>Name</th>
                  <th>Club</th>
                </tr>
                </thead>
                @foreach($membres as $membre)
                <tr>
                   <td> {{$membre->name_membre}}</td>
                   <td> {{$membre->club->name_club}}</td> 
                   <td>
                     <form method="POST" action="{{ route('membres.destroy', $membre) }} ">
                    <a class="btn btn-sm btn-warning" href="{{route('membres.edit',$membre->id_membre)}}">Editer</a>
                    @csrf
                    @method('DELETE')
                    <button type="submit" class="btn btn-sm btn-danger">Deleter</button>
                    </form>
                    </td>
                </tr>
                @endforeach
            </table>
          </div>
        </div>
      </div>
    </div>
{!! $membres->links() !!}
  </div>
@endsection

谢谢你

我很确定你在Membre模型上添加关系时没有传递正确的键。它应该类似于:

public function club()
{
    return $this->belongsTo('App\Club', 'fk_club', 'id_club');
}
此外,您必须将与俱乐部模型的关系更新为:

public function membres()
{
    return $this->hasMany('App\Membres', 'fk_club', 'id_club');
}

您首先要告诉的是clubs表的列是什么,id列被称为id_club,因此它应该是clubs.id_club我们可以看到您将模型传递到视图的控制器吗?选择*FROM clubs where clubs.id_club=1 LIMIT 1就可以了。关于模型membre,我有这个受保护的$filleble=['name_membre','fk_club'];公共功能俱乐部{return$this->belongsTo'App\club',fk_club'}也放上另一个ID,因为它与Laravel standards@Matei Mihai不同:对不起,我不明白…我有5.6版。。。对于{return$this->belongsTo'App\Club',fk_Club'},我通过{return$this->belongsTo'App\Club',id_Club'}?@anais_stemb更改答案。。将其更改为$this->belongsTo'App\Club'、'fk\u Club'、'id\u Club',您必须为关系提供两列
public function membres()
{
    return $this->hasMany('App\Membres', 'fk_club', 'id_club');
}