我正在尝试使用Sentry2
安装Laravel4
并且我已设法将其作为dependency
包含在项目中但是就数据库而言我是有点失落。他们在网站上说:
Note: The database schema is located under vendor/cartalyst/sentry/schema/mysql.sql
当我去那里时,我看到sql
文件有各种不同的表,现在这是我不确定的地方,我是否需要为这些表中的每一个写一个migration
或者在那里我可以运行它来创建所需的tables
吗?
我是laravel
的新手,所以对这个问题表示道歉,如果它非常简单。当此文件中包含所有sql
时,必须为每个表编写一个迁移似乎不切实际?
非常感谢任何帮助!
答案 0 :(得分:1)
首先,确保在运行迁移之前正确配置了数据库/环境。对于一些人来说这可能是显而易见的,但总是值得检查。这意味着确保您在database.php
文件中具有连接详细信息和凭据,并且它位于将应用于您将在其中运行迁移的环境的文件夹(或根目录)中。
其次,由于Sentry有自己的迁移,因此您不必编写自己的迁移。您只需运行随附的迁移。幸运的是,Laravel有一个简单的方法可以做到这一点。只需在项目的根文件夹上运行此命令:
php artisan migrate --package="cartalyst/sentry"
将自动创建所有必需的表格。从那里,你可以写一个种子并开始测试......
或者,您可以将包含的迁移复制到项目自己的迁移文件夹中。通过这种方式,您可以上下移动,而不必担心来自包的内容和不包含的内容。为此,只需运行migrate:publish
命令。
php artisan migrate:publish cartalyst/sentry
这是框架的本机功能,因此您可以使用任何正确包含迁移的软件包运行上述两个命令。
最后,运行迁移:
php artisan migrate // Up
php artisan migrate:rollback // Down