首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何访问Laravel中的Tracker (antonioribeiro/tracker)对象

如何访问Laravel中的Tracker (antonioribeiro/tracker)对象
EN

Stack Overflow用户
提问于 2016-08-11 01:33:18
回答 2查看 1.5K关注 0票数 0

我正在使用AntonioRiveiro/跟踪器回购我的拉拉维尔应用程序。我想给它添加一些功能,这样它就没有现成的功能。

  1. 但是我找不到它的实例是在哪里创建的,也找不到如何在控制器中访问Tracker对象。
  2. 或者如何扩展跟踪器对象?
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-08-11 02:02:15

所以我认为最简单的方法是这样做:

首先,创建您自己的ServiceProvider

代码语言:javascript
运行
复制
php artisan make:provider CustomTrackerServiceProvider

现在打开那个文件,我们需要做一些修改。

首先,我们需要扩展Tracker提供的ServiceProvider。

代码语言:javascript
运行
复制
use PragmaRX\Tracker\Vendor\Laravel\ServiceProvider as TrackerServiceProvider

class CustomTrackerServiceProvider extends TrackerServiceProvider

上面的use别名并不是必需的,但考虑到与核心框架类似的命名约定,我更喜欢它的清晰性。

现在,您需要替换PragmaRX\Tracker\Vendor\Laravel\ServiceProviderproviders array下的config/app.php文件中的用法

代码语言:javascript
运行
复制
config/app.php
'providers' => [
    //other providers and what have you
    App\Http\Providers\CustomTrackerServiceProvider::class
]

现在你有能力做出改变了。只要核心类的成员不是private,就可以覆盖它的默认功能。

查看供应商提供的文件,并确定与供应商维护人员类似的架构模式,您就可以继续了。

票数 2
EN

Stack Overflow用户

发布于 2016-08-11 02:34:23

这个问题的答案为(2)提供了一个解决方案,我找到了(1) 这里的答案。

要访问跟踪器对象,需要包括:

代码语言:javascript
运行
复制
use PragmaRX\Tracker\Vendor\Laravel\Facade as tracker;

然后你会做这样的事情:

代码语言:javascript
运行
复制
$visitor = Tracker::currentSession();

正如文档中所描述的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38885965

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档