php - 我的 Laravel 有问题

标签 php mysql laravel composer-php laravel-artisan

我的 Laravel 肯定有问题。

我已经安装了 Laravel 5.4。我已经在全局范围内的 Windows 上安装了 Composer。我有 php artisan 工作,但到处都是错误:


php artisan 修补匠

当我输入 php artisan make:model Brand 时,它显示 Model created successfully. 太棒了,对吧?当我接下来输入 php artisan tinkerApp/Brand::all() 时,它说找不到“品牌”类。

虽然我的 app 文件夹中有 Brand.php:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Brand extends Model
{
    //
}

顺便说一下,我正在关注 this series在 laracast。


MySQL

我无法运行 mysql 命令,尽管我已经在我的 Windows 上手动安装了 mySQL(也包括全局)。

它说

'mysql' is not recognized as an internal or external command,
operable program or batch file.

迁移

php artisan migrate 给我这个错误:

[Illuminate\Database\QueryException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key
length is 767 bytes (SQL: alter table `users` add unique `users_email_unique`(`email`))

[PDOException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key
length is 767 bytes

除了这个 php artisan migrate 工作得很好,它还为我创建了两个表:migrationsusers。我以为那是因为我的 \database\migrations 文件夹中有两个文件。但是……

当我说 php artisan make:migration create_brands_table --create=brands 时,它确实会在此文件夹中创建一个文件。就像它应该的那样。我在 up() 函数中添加了几行,看起来像这样:

Schema::table('brands', function (Blueprint $table) {
    $table->increments('id');
    $table->string('name');
    $table->text('description');
    $table->timestamps();
});

但它不会创建表。

请注意,我确实编辑了我的 .env 文件以建立正确的数据库连接,否则 php artisan migrate 将无法在我创建的其他两个表上工作php artsian migrate 命令。

它只会给出一个已经存在的错误。我也尝试了 migrate:rollback 和 migrate:refresh。我尝试在 composer dump-autoload 命令之后执行此操作,但结果相同。


我在这里迷路了,我显然是 Laravel 的新手,但我的一些熟悉 Laravel 的 friend 从未遇到过我遇到的问题。


我尝试重新安装并创建一个新项目,所有...猜猜看:相同的结果。

最佳答案

你弄错了命名空间,使用反斜杠:App\Brand

要创建表,请使用 Schema::create 而不是 Schema::table

mysql部分不是Laravel关心的,不应该出现在本题中。无论如何,您应该检查您的环境 PATH 变量。

关于php - 我的 Laravel 有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43282128/

相关文章:

PHP - 用重音符号解析 xml

MySQL,重命名数据库中所有表的所有列

拉拉维尔 : How to copy a mysql table structure with DB?

php - 将 JSON 解码为 Symfony 实体

php - php.ini 中 apache2handler 下的超时设置是什么?会影响 session 超时吗?

mysql - 从表中选择一个满足条件而另一个不满足的条件

php - 如何在 laravel 5.4 中保护 .env 文件?

php - Laravel 'Unresolvable dependency resolving [Parameter #0 [ <required>"

php - 更新查询将零值写入数据库

php - 是什么导致了这个 modx 错误?