问题标签 [cartalyst-sentinel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3257 浏览

php - Laravel 的 Eloquent 方法 getKey() 返回 UUID 的第一个数字

我有一个扩展Catalyst 的 SentinelUser的模型。Role

如果我使用默认的递增主键,一切正常。当我将其更改为使用 UUID 时,它的行为很奇怪。一切都很好,除了一点点细节。

这是检查是否属于a的代码片段UserRole

该代码的作用是:如果我通过Role它的一个实例循环遍历所有用户的角色并检查它们中的任何一个是否与提供$role的 id 匹配。

以下是$user->roles( $this->roles) 关系:

$role->getRoleId()正确返回 UUID :"8fbc99e2-3cbb-4e98-b0e3-4c88027d787f"

但是$instance->getRoleId()return 8,或者 UUID 的第一个数字字符是什么。如果第一个字符是字母,则返回0

我已经确认这$instance确实是一个实例,RoleInterface所以我认为它的行为应该与$role.

我还添加public $incrementing = false了两个模型。

我已经对所有被调用的供应商函数进行了几个检查点,但我无法弄清楚为什么会发生这种情况。

任何帮助是极大的赞赏。

我在他们的 GitHub 存储库上打开了一个新问题,所以这里是保持答案同步的链接:github.com/cartalyst/sentinel/issues/289(对不起,我不能发布超过 2 个链接)

0 投票
1 回答
665 浏览

php - 使用 laravel 的 cartalyst/sentinel 中的多个用户模型

我正在将 cartalyst/sentinel 与 laravel 一起使用,我希望将多用户模型与 sentinel 一起使用。它是我在 laravel 中重写的一个 yii 应用程序,它为每种类型的用户(如客户端、管理员等)都有单独的表。具有角色库我必须创建与哨兵用户模型的关系,但很多查询都是基于现有的表键。laravel 如何使用不同的表进行身份验证?

0 投票
1 回答
721 浏览

php - Laravel 5.3 完全用 Cartalyst/Sentinel 替换默认身份验证

我在 Laravel 5.3 上有一个新项目,我想使用 Cartalyst/Sentinel 作为默认身份验证和角色管理器。我试图找到一些关于如何使 Sentinel 默认身份验证管理器的文档,但没有找到任何足够准确的答案。有人可以提供分步说明 - 需要更改、替换、添加什么以及在哪里以正确的方式使用 Sentinel?

0 投票
0 回答
61 浏览

laravel-5.2 - How to push key value pair to post data array Sentinel Register

I created new column to my user table through database for uploading profile_pic image details but when i am trying to push upload image name to $request::all() its doesn't saves image name in database when Sentinel::register() get called other columns get filled.

$request['profile_pic'] = $safeName;

this what the way i am using to push details in $request array

0 投票
1 回答
851 浏览

php - Response.php 第 403 行中的 UnexpectedValueException - Laravel 5.3

我是 Laravel 的新手,正在构建一个小项目作为我的学业。我遇到了上述错误,我似乎无法修复它。任何帮助表示赞赏。

我正在使用哨兵包进行身份验证。

网页.php

登录控制器.php

当我单击提交按钮时,显示此错误:

Response.php 第 403 行中的 UnexpectedValueException:响应内容必须是实现 __toString() 的字符串或对象,给出“布尔值”。

0 投票
1 回答
466 浏览

php - Laravel cartalyst sentinel - 软删除和恢复用户

如何使用 cartalyst sentinel 包软删除和恢复用户。我正在使用它进行身份验证。我的主要问题是我找不到在哨兵中检索软删除用户的功能。如果我使用获取用户,User::withTrashed()->那么我无法将请求中的密码与数据库中的哈希密码匹配,以在不使用哨兵的情况下手动验证身份。

我尝试使用$hasher = Sentinel::getHasher();获取密码的哈希并将其与数据库中的密码匹配。但它不匹配。也许我错过了一些东西。

这不起作用,因为 findUserById 没有返回用户

0 投票
1 回答
1007 浏览

php - Laravel 5.4 Sentinel 会话不会持续存在

但是,当我尝试 Sentinel::check(); 时,身份验证工作正常;当前登录用户的返回值为 null

0 投票
0 回答
529 浏览

php - 使用 Behat 测试登录会话

我正在使用Behat测试 XML 和 JSON REST API 。对于身份验证,我使用Sentinel。现在,如果我通过 Behat 登录用户,并测试登录会话的状态,API 会返回否定响应(例如用户未登录)。当我使用 AJAX 请求在浏览器中手动执行完全相同的操作时,一切正常。所以最终结果很好,但场景失败了。关于如何克服这个问题的任何建议?

更新:

我将详细说明应用程序的设置,它基于SlimTwigEloquentSentinel

API 有一些路由来创建、显示(是或否)和删除用户会话。因此,登录用户是通过将电子邮件地址和密码发送到/session.jsonor来完成的/session.xml。在幕后,控制器基本上会调用Sentinel::authenticate(...).

这一切在浏览器中都可以正常工作。如果我对 执行 GET 请求/session.json,我将看到用户已正确登录。如果我对 Behat 执行相同的步骤,我将在 POST 请求中获得正确的返回值,因此 Sentinel 会说用户已登录。但 GET 请求会告诉我用户未登录。

为了给您一个想法,Behat 场景如下所示:

在上下文中,我使用Requests库来实际执行请求。因此,Behat 充当了普通客户的角色。

0 投票
1 回答
447 浏览

php - Laravel Cartalyst 平台显示 /bootstrap/cache/config.php 的问题

使用 Laravel Cartalyst 平台开发我面临 /bootstrap/cache/config.php 的问题

如果我运行php artisan config:cache出现以下问题:

如果我删除 /bootstrap/cache/config.php 应用程序运行正常,但只要我运行 php artisan config:cache

并且在 bootstrap/cache 中创建了一个新的 config.php,但是一旦创建了文件,应用程序就会再次崩溃并出现白页。

调试 php_error.log 会显示以下信息:

PHP 致命错误:未捕获的 ReflectionException:/Applications/MAMP/htdocs/vendor/laravel/framework/src/Illuminate/Container/Container.php:719 中不存在类配置 堆栈跟踪:

0 /Applications/MAMP/htdocs/vendor/laravel/framework/src/Illuminate/Container/Container.php(719):

ReflectionClass->__construct('config')

1 /Applications/MAMP/htdocs/vendor/laravel/framework/src/Illuminate/Container/Container.php(598):

照亮\容器\容器->构建('配置')

2 /Applications/MAMP/htdocs/vendor/laravel/framework/src/Illuminate/Container/Container.php(567):

Illuminate\Container\Container->resolve('config')

3 /Applications/MAMP/htdocs/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(708):

照亮\容器\容器->make('config')

4 /Applications/MAMP/htdocs/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(107):

Illuminate\Foundation\Application->make('config')

5 /Applications/MAMP/htdocs/ 在 /Applications/MAMP/htdocs/vendor/laravel/framework/src/Illuminate/Container/Container.php

在线 719

我找不到哪个配置文件丢失或我可以做些什么来解决错误。

brgds。

0 投票
1 回答
813 浏览

php - 保存时从数组值中删除双引号 - php

我有一个像下面这样来自表单的数组:

我想像这样将它存储在数据库中:

但是,当我保存它时,它总是保存如下:

我想在没有双重引用的情况下保存记录value(true and false)。我目前只是将值保存为雄辩的价值保存

我怎样才能实现它?

更新

我正在使用 Laravel 5.4 和 mysql 数据库,用于 ACL 的 Cartalyst Sentinel 包