嗨,下面是我的亲戚
用户模型
public function loginlogout()
{
$this->HasMany("App\Models\LoginLogoutLogs");
}
这是我的LoginLogs模型
public function users()
{
return $this->belongsTo('App\Models\User');
}
我试图访问名称从用户这样
$loginLogoutLogs = LoginLogoutLogs::all();
foreach($loginLogoutLogs as $loginLogoutLog){
dd($loginLogoutLog->users()->name);
}
但我得到了这个错误
未定义的属性:照亮\数据库\雄辩\关系\属于::$name
编辑添加模型
<?php
namespace App\Models;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Zizaco\Entrust\Traits\EntrustUserTrait;
use Session;
use Illuminate\Support\Facades\DB;
class User extends Authenticatable
{
use Notifiable;
use EntrustUserTrait;
protected $table = 'tbl_users';
protected $primaryKey = 'id';
protected $guarded = ['id'];
const API = 'api';
const WEB = 'web';
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'name', 'email', 'password', 'last_login', 'Address', 'Age', 'DateOfBirth', 'created_by', 'deleted_by'
];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'password', 'remember_token',
];
protected $casts = [
'is_admin' => 'boolean',
];
public function isAdmin()
{
return $this->is_admin;
}
static function GetUserNamebyID($id)
{
$name = User::select("name")->where(["id" => $id])->pluck('name');
if (isset($name[0])) {
return $name[0];
} else {
return '';
}
}
public function loginlogout()
{
$this->HasMany("App\Models\LoginLogoutLogs", 'userID');
}
public function company()
{
$this->HasMany("App\Models\Company");
}
}
现在是LoginLogout模型
<?php
namespace App\Models;
use Illuminate\Notifications\Notifiable;
use Zizaco\Entrust\Traits\EntrustUserTrait;
use Illuminate\Database\Eloquent\Model;
use Session;
use Illuminate\Support\Facades\DB;
class LoginLogoutLogs extends Model
{
use Notifiable;
use EntrustUserTrait;
protected $table = 'tbl_users_logs';
protected $primaryKey = 'id';
protected $guarded = ['id'];
const API = 'api';
const WEB = 'web';
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'userID','is_accpeted','type','addedFrom'
];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'password', 'remember_token',
];
protected $casts = [
'is_admin' => 'boolean',
];
public function isAdmin()
{
return $this->is_admin;
}
// change company to hasmany
public function user()
{
return $this->belongsTo('App\Models\User');
}
}
您需要更改您与用户的关系,在LoginLogoutLogs
中添加外键:
public function user()
{
return $this->belongsTo('App\Models\User', 'userID');
}
还要确保调用用户insted的用户
$loginLogoutLogs = LoginLogoutLogs::all();
foreach($loginLogoutLogs as $loginLogoutLog){
dd($loginLogoutLog->user->name);
}
如果要执行“快速加载”,请使用:
$loginLogoutLogs = LoginLogoutLogs::with('user')->get();
foreach($loginLogoutLogs as $loginLogoutLog){
dd($loginLogoutLog->user->name);
}
简单修复:
$loginLogoutLogs = LoginLogoutLogs::all();
foreach($loginLogoutLogs as $loginLogoutLog){
dd($loginLogoutLog->users->name);
}
您希望访问关系实体,而不是关系模型。
通过使用users()
,您的代码认为您试图在users
模型上调用name()
方法,而不是在loginLogs
类上调用users
方法。
简单地改变你的部分
dd($loginLogoutLog->users()->name);
成
dd($loginLogoutLog->users->name);
拆下用户的支架,这很容易修复。这里我们得到的是一个属性,而不是一个函数。。。。(尽管在模型中定义为功能)
我无法将结果附加到查询中。我正在使用页面上的类别筛选结果,并尝试添加分页。当用户单击类别时,只应显示与类别相关的产品,在分页时,我希望保留所选类别。我得到了这个错误: Facade\Ignition\Exceptions\ViewException调用未定义的方法Illumb\Database\Eloquent\Builder::appends()(视图:D:\Xampp\htdocs\Proje
我正在尝试返回属于文件路由中相同案例的多个会话。php: 控制器:: SessionController.php: 模型类:: LawSession.php: 模型类:: LawCase.php: 我得到了这个错误: 关系方法必须返回类型为照明\数据库\雄辩\关系\关系的对象
我有3个DB表,我没有在其中任何一个表上添加任何关系。然后我编写了以下代码: 它应该创建一个新用户,然后查看谁邀请了他,然后与邀请者创建一个共享记录。 但是当我测试它时,我得到了一个错误: 逻辑异常 关系方法必须返回类型为照明\数据库\雄辩\关系\关系的对象 打开:/home/oneinfin/public\u html/diasis/vendor/laravel/framework/src/il
我正在尝试联系许多对许多,在两个模式“培训和培训课程”,所以我做了第三个模式“课程”,以尝试关系1对许多。但是我得到了一个错误: null TypeError:无法读取对象上未定义得属性“belongsto”。(c:UsersDellDownloadsGraphql-12.18.2020Graphql-12.18.2020Graphql-12.18.2020ServerAppDatabaseDat
我正在使用Laravel 5.8,在这个项目中,我想从数据库中的一个表中删除一些数据,所以我在Blade上对其进行了编码: 这是路线: 这是WalletController的控制器销毁方法: 但是一旦我运行这个,我就会收到这个错误消息: 方法照亮\数据库\雄辩\集合::de不存在。 那么这里出了什么问题?我如何解决这个问题?
我有一个注释表和用户表,其关系为:user- 我的其他模型没有任何问题与Has很多关系,然而,评论模型有一个问题,我尝试的每一件事(即使我使用Has很多只是为了看看它是否会有不同的错误)。 下面是注释模型。 以下是用户表: 这是评论表 最后,当我调用$comment时- 谢谢