pat*_*cio 7 laravel-5 cartalyst-sentinel
一种安装的Sentinel(我说有点因为我不明白一个部分说:
Sentinel附带了illuminate/database的默认实现,为了使用它,请确保在composer.json文件中需要它.
//导入必要的类
use Cartalyst\Sentinel\Native\Facades\Sentinel;
use Illuminate\Database\Capsule\Manager as Capsule;
Run Code Online (Sandbox Code Playgroud)
//包括作曲家自动加载文件
require 'vendor/autoload.php';
Run Code Online (Sandbox Code Playgroud)
问题1:我在哪里写代码?
问题2:我现在最关心的是如何制作一些关于注册,激活等的内容.我本来希望创建一个链接,发送到你的电子邮件,点击它就可以激活它.但我能看到的就是:
$credentials = [
'email' => 'john.doe@example.com',
'password' => 'password',
];
$user = Sentinel::register($credentials);
or if Also activate:
$credentials = [
'email' => 'john.doe@example.com',
'password' => 'password',
];
$user = Sentinel::registerAndActivate($credentials);
Run Code Online (Sandbox Code Playgroud)
当我得到输入时,我应该在Controller中写这个?那电子邮件激活怎么样?
让 Sentinel 身份验证-授权包真正为所有初学者运行:
https://github.com/rydurham/Sentinel/blob/master/readme.md
正是作者。如果您已按照任何其他站点的说明进行安装,则最好删除您的安装并再次运行 composer update 以便它摆脱任何哨兵的痕迹。
安装以下 ryan durham 步骤。(它们至少在我发布之日有效)。
一旦你这样做了,你会发现已经有预先创建的刀片页面。你可以去注册为第一个,然后输入你的数据(当然之前已经配置了你的数据库和邮件参数)。
此外,在最新版本的 Laravel 中的 Mail.php 中,与以前的版本相比,有一个参数发生了变化:关于加密的参数。在我的情况下,我需要像过去一样设置它,只需:
'encryption' => 'ssl' 而不是 'encryption' => env('MAIL_ENCRYPTION', $_ENV['MAIL_ENCRYPTION']
在第二种情况下,它将无法连接到您的邮件服务器。
这就是说,是的,Sentinel 已经预先构建好了。填写注册表后,您将看到自己已添加到数据库但仍未激活。然后在您的邮箱中,您将看到我谈到的那个链接。单击它,您的帐户将被激活。
下面的代码:
use Cartalyst\Sentinel\Native\Facades\Sentinel;
use Illuminate\Database\Capsule\Manager as Capsule;
适用于尝试在本机使用该包的人。由于您使用的是 laravel,因此不需要这个。请确保遵循 Laravel 特定说明。
laravel-5因为您已在问题中标记,所以我假设这就是您正在使用的。在这种情况下,首先将其添加到您的composer.json:
composer require cartalyst/sentinel "2.0.*"并将以下内容添加到您的config/app.php文件:
到$providers数组:
'Cartalyst\Sentinel\Laravel\SentinelServiceProvider',
并致$alias~ array:
'Activation' => 'Cartalyst\Sentinel\Laravel\Facades\Activation',
'Reminder' => 'Cartalyst\Sentinel\Laravel\Facades\Reminder',
'Sentinel' => 'Cartalyst\Sentinel\Laravel\Facades\Sentinel',
完成此操作后,您可以发布并迁移包。您还需要扩展Cartalyst\Sentinel\Users\EloquentUser您的用户模型而不是 Eloquent。如果您使用“角色”模型,您将需要执行相同的操作。
有关更多信息,请参阅文档: https: //cartalyst.com/manual/sentinel/2.0#laravel-5
确保您使用的是正确的版本:Laravel 5 为 2.0,Laravel 4 为 1.0。*
关于您的第二个问题,您必须向客户端发送一封包含激活码的电子邮件(通常该代码隐藏为查询字符串或其他内容,因此用户不一定需要了解它)然后您使用代码进行激活。或者,如果您愿意,您可以在他们注册后自动进行身份验证。
如果您仍然无法弄清楚激活后的更多信息,请阅读他们的文档,我们会为您提供帮助,但请先亲自尝试。
| 归档时间: |
|
| 查看次数: |
11446 次 |
| 最近记录: |