session - Laravel session 表添加附加列

标签 session laravel laravel-4 logout

我想在 user_id 表上添加一个额外的列 session

原因是,有些时候有垃圾邮件发送者注册假账号,一旦我知道用户是垃圾邮件发送者,我想通过删除 session 记录来注销用户。

有可能实现这一目标吗?

最佳答案

这是 session 迁移架构:

Schema::create('sessions', function($table)
{
    $table->string('id')->unique();
    $table->text('payload');
    $table->integer('last_activity');
    $table->integer('user_id')->unsigned(); //// ADD IT!
});

你可以添加任何你喜欢的列,Laravel 不会介意。

或者您可以创建一个新的迁移并让它在该表上添加一列。
$table->integer('user_id')->unsigned();

您可以为它创建一个模型:
class SessionModel extends Eloquent {

}

并用它做任何你需要的事情:
$session = SessionModel::find(Session::getId());
$session->user_id = 1;
$session->save();

但是,如果您正在考虑向负载添加更多信息,这是 Laravel 保存 session 数据的地方,尽管我认为这是可能的,但您必须在 Laravel 的代码中进行更多挖掘才能做到这一点。

关于session - Laravel session 表添加附加列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20541251/

相关文章:

session - 如果我使用 J2EE session ,我是否需要 ColdFusion session ?

python - Flask session 属性在初始加载后丢失类型

php - 如何计算帖子的浏览次数(Laravel 事件监听器)?

Laravel 表单不会 PATCH,只会 POST - 嵌套 RESTfull Controller 、MethodNotAllowedHttpException

php - SQLSTATE[HY000] [2005] 未知的 MySQL 服务器主机 'mysql1.alwaysdata.com:3306' (2)

session - Laravel 4.1 session 变量被随机遗忘

asp.net - session 在 asp.net 网站上混在一起

mysql - 在 Nodejs 中没有关于任何其他用户的最后发布信息

php - 使用PHP更新MySQL数据库并返回值

database - Laravel 4 with forge,环境变量问题