首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Macroable.php第74行中的BadMethodCallException :方法保存不存在。Laravel 5.2

在Laravel 5.2中,Macroable.php是一个trait,用于给类动态添加方法。在该文件的第74行,出现了一个BadMethodCallException异常,提示调用的方法不存在。

BadMethodCallException是PHP中的一个内置异常类,用于表示调用了一个不存在的方法。在这种情况下,可能是在使用宏方法时,调用了一个未定义的方法。

解决这个问题的方法是检查调用的方法是否正确定义,并确保在调用之前已经正确注册了宏方法。可以通过在类中使用Macroable trait,并使用它提供的macro方法来注册宏方法。

以下是一个示例代码,演示如何在Laravel 5.2中使用Macroable trait和宏方法:

代码语言:php
复制
use Illuminate\Support\Traits\Macroable;

class MyClass
{
    use Macroable;

    public function __call($method, $parameters)
    {
        if (static::hasMacro($method)) {
            return $this->__callMacro($method, $parameters);
        }

        throw new BadMethodCallException("方法{$method}不存在");
    }
}

// 注册宏方法
MyClass::macro('myMethod', function () {
    // 宏方法的实现逻辑
});

// 调用宏方法
$obj = new MyClass();
$obj->myMethod();

在上述示例中,我们首先在类中使用了Macroable trait,并在类的__call方法中处理了宏方法的调用。然后,通过调用macro方法,注册了一个名为myMethod的宏方法。最后,我们创建了一个MyClass的实例,并调用了myMethod方法。

关于Laravel 5.2的更多信息,可以参考官方文档:Laravel 5.2 Documentation

请注意,以上答案中没有提及腾讯云相关产品和产品介绍链接地址,因为要求答案中不能提及亚马逊AWS、Azure、阿里云、华为云、天翼云、GoDaddy、Namecheap、Google等流行的一些云计算品牌商。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Laravel5.1框架注册中间件三种场景详解

本文实例讲述了Laravel5.1框架注册中间件三种场景。...分享给大家供大家参考,具体如下: 在Laravel中注册中间件主要有三种场景,一种给控制器方法进行注册,一种是给整个控制器进行注册,最后一种是给全局注册中间件。...1、在控制器方法中注册中间件 这种需求是最为常见,这个例子是给IndexControllerindex方法添加中间件。...EmailMiddleware'],'uses'= 'IndexController@index']); 2、在整个控制器中注册中间件 这种需求有的时候也会出现,如果给整个控制器中注册中间件,那么这个控制器所有方法都注册了该中间件...\Controller,然后我们来看看Laravel源码。

1.6K51

Laravel 参数验证疑与惑

然后在AppServiceProvider重新绑定新验证器工厂创建类; 二,AppServiceProvider通过resolver方法设置工厂类resolver属性,接管验证器实例化,例如:...1 通过extend方法扩展 //这是一个简单参数比较验证规则,Laravel5.8提供,Laravel5.5未提供 //验证规则如下: 'max_num'=>'gte:min', Validator...message方法,用于提供验证失败错误提示信息。 使用自定义验证类,相对于extend方法扩展有一个很大bug就是无法在自定义类获取到当期验证器对象。...像Yii2,因为基本上所有的对象都有验证方法,所以很容易用当期类方法作为验证规则验证函数。...例如,一个验证规则如下,表示用当期类validateMinNum对参数进行验证,那么,这样一个功能,如何在Laravel实现呢。

3.3K00

关于Laravel参数验证一些疑与惑

然后在AppServiceProvider重新绑定新验证器工厂创建类; 二,AppServiceProvider通过resolver方法设置工厂类resolver属性,接管验证器实例化,例如:...1 通过extend方法扩展 //这是一个简单参数比较验证规则,Laravel5.8提供,Laravel5.5未提供 //验证规则如下: 'max_num'= 'gte:min', Validator...message方法,用于提供验证失败错误提示信息。 使用自定义验证类,相对于extend方法扩展有一个很大bug就是无法在自定义类获取到当期验证器对象。...像Yii2,因为基本上所有的对象都有验证方法,所以很容易用当期类方法作为验证规则验证函数。...例如,一个验证规则如下,表示用当期类validateMinNum对参数进行验证,那么,这样一个功能,如何在Laravel实现呢。

6.6K31

Laravel5.2之Filesystem源码解析(下)

,就是可以定义多个bucket,不同bucket存各自文件,互不干扰,在Laravel配置S3时得指定是哪个bucket,这里假设file.txt存储在laravel bucket),尽管其实际路径为类似这样...Decorator Pattern也是Laravel实现Middleware一个重要技术手段,以后应该还会聊到这个技术。...在LaravelAppServiceProvider中使用Storage::extend(name, Closure callback)注册一个自定义filesystem。...实际上,Filesystemuse PluggableTrait,这个trait提供了addPlugin(parameters)方法。...Cache源码解析 最后一个好技术就是Cache模块设计,使用了Decorator Pattern,设计比较巧妙,这样只有在需要这个decorator时候再装载就行,就如同LaravelMiddleware

1.5K41

laravel-nestedset:多级无限分类正确姿势

嵌套集合模型 安装要求 PHP>=5.4 laravel>=4.1 v4.3版本以后支持Laravel-5.5 v4版本支持Laravel-5.2、5.3、5.4 v3版本支持Laravel-5.1 v2...版本支持Laravel-4 强烈建议使用支持事物功能数据引擎(像MySqlinnoDb)来防止可能数据损坏。...*在下面的例子, $parent 为已存在节点 添加到父节点末端方法包括: // #1 使用延迟插入 $node->appendToNode($parent)->save(); // #2 使用父节点...将数组重建为树 你可以轻松重建一个树,这对于大量修改树结构保存非常有用。...bar节点没有主键,就是不存在,它将会被创建。 $delete 代表是否删除数据库已存在但是$data不存在数据,默认为不删除。

3.4K20

Laravel框架使用技巧之使用url()全局函数返回前一个页面的地址方法详解

注意:文章标题中5.2+表示该文章内容可向上兼容,适用于Laravel版本5.2及更高(目前最新为5.6),但不可向下兼容,即不适用于5.2版本以下。...而Laravel从版本5.2+开始,便提供了一系列全局帮助函数(Helper Functions)来简化我们工作: https://laravel.com/docs/5.2/helpers#method-url...要查看更高版本相应文档,请将以上链接版本号替换为相应版本即可。...帮助函数中有一些很常用到,比如Pathspublic_path及storage_path,Miscellaneousdd、view、session等。...对于route函数更多使用实例,会在另一篇文章中进行详述。 本文主要讲解了Laravel框架使用url()全局函数返回前一个页面的地址方法,更多关于Laravel框架使用技巧请查看下面的相关链接

1.3K20

Laravel5.2之Validator

引言: Laravel提供了Validator模块,可解决表单提交验证等一些需求,并且可以在视图View显示错误验证信息,交互还是很友好。注明:作者水平有限,有错误或建议请指正,轻拍。...http://XXX/laravel/test/validator这个路由,其中XXX为你host,可以是虚拟host也可以是你共有域名,则表单提交页面为: 3、写表单提交控制器 然后写上表单提交方法..., ], ], 注意: 如果显示$errors变量不存在等错误,这主要是在app/Http/Kernel.php文件,把\Illuminate\...@postValidator'); }); (二)、验证数组形式表单 有时候在写表单时,需要同时输入相类似的表单输入时,可以把这些input作为数组看待,laravel5.2也提供了数组形式验证...rules()方法里主要写表单验证规则,在这里把控制器postValidator()方法规则抽取出来放在这里: return [ 'person.*.name

13.2K31

Laravel 非常规教程之0 引入篇

老高又开始折腾laravel了 :-D (基于Laravel 5.2) 写在前面 此系列文章主要是记(瞎)录(扯)一些老高在研究 laravel 5.2感悟。...主要受众应该是和老高一样喜欢折腾家伙们吧! 常规教程在这里Laravel 5.2 中文文档,在此要十分感谢Laravel 学院!没有他laravel在国内也不会这么普及(老高)。...当然不要忘了Laravel还有一个子框架叫Luman,这个路人框架也值得学习! ps.Laravel老高去年就开始关注了,因为太忙(懒)了,所以一直没有深入学习这个框架。不过不要紧,该来还是会来。...:false);" // bool(false) 安装 5.1 - 5.2变化不是很激进,安装方法没有变化,所以安装其实没什么好说,具体看这里Laravel 5.2 安装。...这里抛砖引玉提一下,ORM这里常理来讲应该对应MVCM,意思是模型,用简单的话将,就是讲一张表映射成一个对象,这样理解是有误,当业务复杂时候,这样定义就不在适用,需要引入一层新业务层(名字随便

87240

Laravel5.2之Demo1——URL生成和存储

书籍基于Laravel4,学习时使用Laravel5.2框架开发。...学习主题 该demo主要涉及如下几个知识点: 创建数据库并迁移数据表 创建表单,学习Laravelblade模板引擎 创建名为Link模型Model 保存数据进入数据库 从数据库获得...这里url表示提交表单时路由,方法为post。在这里使用laravelcollective/html这个组件,顺便了解下怎么在laravel安装组件。 这里书中使用了laravel4....通过composer安装也很简单,就是在项目根目录下composer.json文件'require'数组添加"laravelcollective/html": "5.2....4、保存数据进入数据库 写好视图表单后,再就是写表单提交路由及其控制器逻辑,在控制器引用创建好Link这个Model往links数据表里存数据。

24.1K31

Laravel5.3之bootstrap源码解析

Laravel在入口index.php时先加载Composer加载器:Laravel5.2之Composer自动加载,然后进行Application实例化:Laravel5.3之IoC Container...()来往laravel.log里打印log值,当然在应用程序中经常\Log::info(),\Log::warning(),\Log::debug()来打印变量值,即Writer类定义方法。...异常处理 异常处理是十分重要Laravel异常处理类\App\Exception\Handler中有一个方法report(),该方法可以用来向第三方服务(如Sentry)发送程序异常堆栈(以后在一起聊聊这个...这个过程主要使用了两个技术:一个是外观类别名;一个是PHP重载,可看这篇:Laravel5.2之PHP重载(overloading)。 6....7)步和(6)步类似:(6)是依次执行每一个不是deferservice providerregister()方法(7)步是依次执行每一个不是deferservice providerboot

7K51

Laravel + Vue 3(Vite、TypeScript)SPA 设置

在本教程,我将向大家展示如何使用 Laravel + Vue 3 使用 typescript 和 Vite 设置你自己单页应用程序。 这是在 Laravel 项目中添加 PWA 手动方法。... 1 步:让我们创建我们 Laravel 项目 composer create-project laravel/laravel laravel-vue-manual 2 步:设置前端 在我们...yarn build,它应该在laravel项目的根目录public文件夹创建一个名为 app 文件夹。... 4 步:设置脚本 我们将在我们根项目目录添加一个开发包,并同时调用它。我们用它来一次运行 2 个或更多命令。...结论 我相信这也是大家可以在 laravel 项目中添加 pwa 一种方式,这样你就可以将它们保存在一个项目中。

2.7K31
领券