【发布时间】:2021-04-28 08:50:15
【问题描述】:
我是 laravel 的新手,当我尝试通过控制器查看我的数据库时,我目前遇到了问题。当我尝试使用控制器查看数据时,出现以下错误。
“SQLSTATE[HY000] [1049] 未知数据库'laravel'”。
如果我使用 artisan tinker,我可以执行 ::all() 并查看我的数据,我也成功地迁移了我的数据。它只是出于某种原因似乎不喜欢我的观点。
我查看了其他类似的建议运行的答案
php artisan cache:clear。
然而这对我没有任何作用。
控制器:
class authorsController extends Controller
{
public function index(){
$authorList = \App\Author::all();
//return $authors;
return view('library.authors');
}
}
.env 文件内部
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=library
DB_USERNAME=root
DB_PASSWORD=
【问题讨论】:
-
请运行
php artisan tinker并执行config('database')。检查它是否选择了正确的值 - 特别是default值和mysql.database值。 -
检查
config/database.php中的值。如果您拥有(并且正在使用)多个connections,则其中一个可能未配置为使用library作为您的database。检查env('...', 'laravel');;某些东西可能正在使用默认值而不是DB_DATABASE -
@ceejayoz 我查看了
config('database'),它表明它们都是正确的数据库。 -
@PaulCarlson 如果您确定这一点,请检查
app/Author.php中没有设置$connection值。 -
@TimLewis 我看了
config/database.php,它看起来不错。我什至搜索了“laravel”,但在 cmets 之外没有找到任何东西。我还查看了我的 .env 文件,使用正确的数据库名称再次看起来不错。