Миграции Laravel не работают

Я не могу заставить его использовать миграции в моей установке laravel (хост Windows 8.1). Я делаю 2 миграции через:

php artisan migrate:make create_language_table

Файл был создан в папке app/database/migrations. Я использую Schema Creator для создания новой таблицы (кстати, соединение с базой данных уже работает). Когда я пытаюсь запустить миграцию с помощью:

php artisan migrate

Laravel говорит: «Нечего мигрировать». Кроме того, всегда возникает вопрос, действительно ли я хочу запустить эту команду (приложение в производстве). Путь, отображаемый для миграции,

C:\MAMP\htdocs\example\app/database/migrations/*_*.php

Может ли это быть проблемой пути в Windows (смешение косой черты с обратной косой чертой)? Заранее благодарю за все ответы!


person G-Wak    schedule 21.03.2015    source источник
comment
Вы очистили таблицу «миграции» в локальной базе данных? Laravel использует их, чтобы узнать, какие миграции он выполнил. Если вы запустили пустую схему базы данных, она все равно вставит имя миграции в таблицу миграции внутри базы данных, что не позволит вам запустить ее снова, поскольку laravel считает, что она уже была запущена.   -  person Steve Bauman    schedule 21.03.2015
comment
Я также уже пытался удалить таблицу миграции и удалить все файлы миграции из папки. Затем запустите php artisan migrate:install, чтобы получить чистую таблицу миграций в базе данных (успешно). Затем я попытался создать и перенести этот файл еще раз - все то же сообщение.   -  person G-Wak    schedule 21.03.2015
comment
Хм, странно. После создания новой миграции попробуйте выполнить composer dump-autoload и php artisan dump-autoload, а затем повторите попытку миграции.   -  person Steve Bauman    schedule 21.03.2015
comment
Пробовал это уже, но просто чтобы быть уверенным, попробовал еще раз. Все то же сообщение.   -  person G-Wak    schedule 21.03.2015
comment
Хорошо, вы можете попробовать создать новый проект laravel и попытаться выполнить миграцию, чтобы проверить, является ли это вашей средой или уникальной для вашего проекта?   -  person Steve Bauman    schedule 21.03.2015
comment
Пробовал с совершенно новым проектом (кстати, я использую laravel 4.2.17). То же сообщение. Кажется, проблема с окружающей средой.   -  person G-Wak    schedule 22.03.2015
comment
Попробуйте запустить php artisan clear-compiled. Если все еще нет радости, удалите все содержимое, хранилище/миграции и хранилище/кеш.   -  person verheesj    schedule 22.03.2015


Ответы (1)


У меня была похожая проблема в прошлом в Windows 7. Мне удалось обойти проблему, отправив путь к миграции:

php artisan migrate --path=app/migrations

Надеюсь, что это работает для вас.

person verheesj    schedule 21.03.2015
comment
Также пробовал это, но все равно получаю то же сообщение. Хотя у меня не было специальных символов в моем пути, я попытался переместить файл миграции в C:/migrations и вызвать php artisan migrate --path=../../migrations, все то же самое... Я не знаю что делать дальше, пока единственный вариант для меня - перейти на свой Mac (на котором работает без проблем). - person G-Wak; 22.03.2015
comment
php artisan make:migration --path=database/migrations работал у меня на Windows 7. - person Saw-mon and Natalie; 29.05.2018