Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
При тестировании кода пользовался mysql, все ок, но довольно долго. Решил использовать sqlite :memory:, первый-же тест бд отвалился с ошибкой. Вот, что мне пишет phpunit:
SQLSTATE[HY000]: General error: 20 datatype mismatch (SQL: insert into "users" ("username", "name", "email", "password", "id", "updated_at", "created_at") values (admin, admin, admin@admin.com, $2y$10$pn7sMyUhibQ0ulMhcAdGouBLkFrJfZfTmMNuic9jDFgKus6KdKYEC, 814526de-292e-4190-a447-f18bd958c696, 2016-11-25 07:28:32, 2016-11-25 07:28:32))
Т.е. значения полей не обернуты в " или ', может кто-то подскажет.
И еще одна не очень приятная штука, у меня одна модель использует SoftDeletes, но при работе с sqlite поле deleted_at не создается, хотя в mysql все отлично.
Не в сети
может потому что вы используете id не как auto increment а передаёте его в параметрах? По крайней мере я пока только это могу предположить.
Покажи файл .env
Не в сети
Вот, изменены только настройки подключения к бд
APP_ENV=local
APP_KEY=base64:pOFWM9/ZLdQPfF0hkZAlV0+6wTIPXxcSLWziAA4T1UU=
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://localhost
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=myLaravel
DB_USERNAME=root
DB_PASSWORD=
BROADCAST_DRIVER=log
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
PUSHER_APP_ID=
PUSHER_KEY=
PUSHER_SECRET=
Не в сети
Тут указано что у тебя по прежнему используется mysql
Не в сети
Ну, как бы тестовое окружение по-другому работает. В config/database.php настраивается подключение, затем в phpunit.xml указывается его название.
Изменено mavsan (26.11.2016 13:19:33)
Не в сети
Страницы 1