PHP fatal error : Call to undefined function Laravel tinker

标签 php laravel undefined-function tinker

我正在尝试在两个表(角色和能力)之间建立关系,但是当我运行函数 allowTo() 时,它说是未定义。 我试图清除缓存和配置,但什么也没做。 如果有人能提供帮助那就太好了,谢谢!

型号:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Role extends Model
{
    
protected $guarded = [];

    public function abilities(){
        return $this->belongsToMany(Ability::class)->withTimestamps();
    }

   public function allowTo($ability){

        $this->abilities()->save($ability);
   }

shell 上的 Tinker 环境:

>>> $user = App\User::find(7);

=> App\User {#3044
     id: 7,
     name: "Rebeca Tejedor",
     email: "rebtej@gmal.com",
     email_verified_at: null,
     created_at: "2020-08-13 10:29:46",
     updated_at: "2020-08-13 10:29:46",
   }
>>> $role = Role::firstOrCreate(['name'=> 'lender']);

[!] Aliasing 'Role' to 'App\Role' for this Tinker session.
=> App\Role {#3041
     id: 1,
     name: "lender",
     created_at: "2020-08-13 10:41:15",
     updated_at: "2020-08-13 10:41:15",
   }
>>> $ability = Ability::firstOrCreate(['name'=> 'edit_items']);

[!] Aliasing 'Ability' to 'App\Ability' for this Tinker session.
=> App\Ability {#3040
     id: 1,
     name: "edit_items",
     created_at: "2020-08-13 10:43:34",
     updated_at: "2020-08-13 10:43:34",
   }

>>> $role = allowTo($ability)

错误:

PHP Fatal error: Call to undefined function allowTo() in Psy Shell code on line 1

The model

Tinker enviroment

最佳答案

您正在以这种方式使用您的关系:

$role = allowTo($ability);

虽然你应该像这样使用它:

$role->allowTo($ability);

在你的方法中:

public function allowTo($ability) {
    $this->abilities()->attach($ability->id);
}

关于PHP fatal error : Call to undefined function Laravel tinker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63394201/

相关文章:

php - Laravel:调用未定义函数 Symfony\Component\Console\mb_convert_variables()?

javascript - 主干 View : function is undefined

php - 如何使用 concat 和 if 语句进行更新?

php - PHP 的 SQL 触发事件

php - Laravel beanstalkd 在重试时间之前排队重复作业

php - 我们可以在 laravel 中根据请求添加属性吗

haskell - 如何使函数仅可用于 ADT 的某个数据构造函数?

php - 存储、修改和检索用户信誉数据的最佳实践

php - 打开两个连接到我的 Apache 服务器?

php - PSR-4 自动加载不工作