Перенести сайт на другой сервер

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Justbox
Сообщения: 7
Зарегистрирован: 2018.05.04, 00:47

Перенести сайт на другой сервер

Сообщение Justbox »

Коллеги, добрый день!
Достался архив сайт (frontend, backend) и база данных, нужно перенести на новый сервер, как правильно сделать?
Аватара пользователя
mat.twg
Сообщения: 222
Зарегистрирован: 2012.02.22, 20:44
Откуда: Санкт-Петербург

Re: Перенести сайт на другой сервер

Сообщение mat.twg »

Копировать!
Аватара пользователя
Dominus
Сообщения: 892
Зарегистрирован: 2013.03.14, 21:27
Откуда: Россия, Иваново
Контактная информация:

Re: Перенести сайт на другой сервер

Сообщение Dominus »

Можно скопировать всё кроме папки vendor и файла composer.loc
Добавить composer.phar
Затем подключиться по SSH и выполнить:

Код: Выделить всё

php composer.phar self-update
php composer.phar install
php composer.phar update
Создать базу, выполнить миграции, если есть, если нет то через phpmyadmin
Не спорь с дураком, иначе окружающие не правильно поймут кто из вас дурак!
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Перенести сайт на другой сервер

Сообщение ElisDN »

Скопировать все файлы кроме подпапок runtime и web/assets и импортировать дамп базы.
Dominus писал(а): 2018.05.04, 19:55 всё кроме файла composer.loc
Как раз копировать с файлом composer.lock.
Последний раз редактировалось ElisDN 2018.05.04, 23:54, всего редактировалось 1 раз.
Аватара пользователя
Dominus
Сообщения: 892
Зарегистрирован: 2013.03.14, 21:27
Откуда: Россия, Иваново
Контактная информация:

Re: Перенести сайт на другой сервер

Сообщение Dominus »

Ну я помню что как то пришлось удалить vendor, и были какие то проблемы при установке, пока не удалил composer.loc. После удаления, установка прошла корректно, и composer.loc автоматически сгенерировался.
Не спорь с дураком, иначе окружающие не правильно поймут кто из вас дурак!
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Перенести сайт на другой сервер

Сообщение zelenin »

Dominus писал(а): 2018.05.04, 23:02 Ну я помню что как то пришлось удалить vendor, и были какие то проблемы при установке, пока не удалил composer.loc. После удаления, установка прошла корректно, и composer.loc автоматически сгенерировался.
проблемы были из-за непонимания как работает. composer.lock нужен.
Justbox
Сообщения: 7
Зарегистрирован: 2018.05.04, 00:47

Re: Перенести сайт на другой сервер

Сообщение Justbox »

У меня есть копия папки с сайтами

Изображение

как понимаю папка с сайтом (www.site.su) находится в каталоге frontend/ а админка (backend.site.su) в backend/

Создал в apache два виртуальных хоста:

www.site.su

Код: Выделить всё

<Directory  /var/www/site/data/www/site.su>
    Options +ExecCGI -Indexes  
    AllowOverride All
</Directory>
<VirtualHost *:80>
    ServerName site.su
    DocumentRoot /var/www/site/data/www/site.su
    DirectoryIndex index.php index.html
    CustomLog /var/www/site/data/logs/site.su-backend.access.log combined
    ErrorLog /var/www/site/data/logs/site.su-backend.error.log
    ServerAlias www.site.su 
    ServerAdmin admin@site.su
    ScriptAlias "/cgi-bin" "/var/www/site/data/php-bin/site.su/site.su"
    Action application/x-httpd-php5 /cgi-bin
    <FilesMatch "\.ph(p[3-5]?|tml)$">
        SetHandler application/x-httpd-php5
    </FilesMatch>
    AddDefaultCharset UTF-8
</VirtualHost>
backend.site.su

Код: Выделить всё

<Directory  /var/www/site/data/www/backend.site.su>
    Options +ExecCGI -Indexes  
    AllowOverride All
</Directory>
<VirtualHost *:80>
    ServerName backend.site.su
#DocumentRoot /var/www/site/data/www/backend.site.su/site.su/backend/web
DocumentRoot /var/www/site/data/www/site.su/backend/web
    DirectoryIndex index.php index.html
    CustomLog /var/www/site/data/logs/backend.site.su-backend.access.log combined
    ErrorLog /var/www/site/data/logs/backend.site.su-backend.error.log
    ServerAlias www.backend.site.su 
    ServerAdmin admin@backend.site.su
    ScriptAlias "/cgi-bin" "/var/www/site/data/php-bin/backend.site.su/backend.site.su"
    Action application/x-httpd-php5 /cgi-bin
    <FilesMatch "\.ph(p[3-5]?|tml)$">
        SetHandler application/x-httpd-php5
    </FilesMatch>
    AddDefaultCharset UTF-8
</VirtualHost>
Скопировал все файлы что на срине в папку /var/www/site/data/www/site.su/

.htaccess

Код: Выделить всё

Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on

# Если запрос начинается с /admin, то заменяем на /backend/web/
RewriteCond %{REQUEST_URI} ^/admin
RewriteRule ^admin\/?(.*) /backend/web/$1

# Добавляем другой запрос /frontend/web/$1
RewriteCond %{REQUEST_URI} !^/(frontend/web|backend/web|admin)
RewriteRule (.*) /frontend/web/$1

# Если frontend запрос
RewriteCond %{REQUEST_URI} ^/frontend/web
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /frontend/web/index.php

# Если backend запрос
RewriteCond %{REQUEST_URI} ^/backend/web
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /backend/web/index.php
Justbox
Сообщения: 7
Зарегистрирован: 2018.05.04, 00:47

Re: Перенести сайт на другой сервер

Сообщение Justbox »

Захожу на сайт, выходит такое сообщение:

Код: Выделить всё

<?php
defined('YII_DEBUG') or define('YII_DEBUG', false);
defined('YII_ENV') or define('YII_ENV', 'prod');

require(__DIR__ . '/../../vendor/autoload.php');
require(__DIR__ . '/../../vendor/yiisoft/yii2/Yii.php');
require(__DIR__ . '/../../common/config/bootstrap.php');
require(__DIR__ . '/../config/bootstrap.php');

$config = yii\helpers\ArrayHelper::merge(
    require(__DIR__ . '/../../common/config/main.php'),
    require(__DIR__ . '/../../common/config/main-local.php'),
    require(__DIR__ . '/../config/main.php'),
    require(__DIR__ . '/../config/main-local.php')
);

(new yii\web\Application($config))->run();
Что делаю не так ?
Аватара пользователя
mat.twg
Сообщения: 222
Зарегистрирован: 2012.02.22, 20:44
Откуда: Санкт-Петербург

Re: Перенести сайт на другой сервер

Сообщение mat.twg »

Какой запрос? DocumentRoot /var/www/site/data/www/site.su Вы уверены, что это web директория проекта?
Аватара пользователя
proctoleha
Сообщения: 298
Зарегистрирован: 2016.07.10, 19:00

Re: Перенести сайт на другой сервер

Сообщение proctoleha »

Justbox писал(а): 2018.05.05, 14:24 Что делаю не так ?
Если вылетает именно такое сообщение как вы показали, ваш web сервер не обрабатывает индексный файл как файл php.

Я не понимаю в вашем конфиге двух строк:

ScriptAlias "/cgi-bin" "/var/www/site/data/php-bin/site.su/site.su"
Action application/x-httpd-php5 /cgi-bin

Зачем они? Устанавливаем php как модуль апач, и работаем.
Вот за что я не люблю линукс, так это за свои кривые, временами, руки
Justbox
Сообщения: 7
Зарегистрирован: 2018.05.04, 00:47

Re: Перенести сайт на другой сервер

Сообщение Justbox »

Сделал простой конфиг виртхоста для основного сайта для backend не делал

Код: Выделить всё

<VirtualHost *:80>
<Directory /var/www/html>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
</Directory>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Перенес все файлы сайта /var/www/html/

Перенес базу создал логин пароль такой-же который в конфиге

Теперь такие ошибки:

Код: Выделить всё

[Sun May 06 12:26:07.033604 2018] [:error] [pid 13269] [client 10.222.2.6:55611] An Error occurred while handling another error:\nPDOException: SQLSTATE[HY000]: General error: 1364 Field 'user_id' doesn't have a default value in /var/www/html/vendor/yiisoft/yii2/db/Command.php:959\nStack trace:\n#0 /var/www/html/vendor/yiisoft/yii2/db/Command.php(959): PDOStatement->execute()\n#1 /var/www/html/vendor/yiisoft/yii2/db/Schema.php(411): yii\\db\\Command->execute()\n#2 /var/www/html/vendor/yiisoft/yii2/db/ActiveRecord.php(509): yii\\db\\Schema->insert('{{%cart}}', Array)\n#3 /var/www/html/vendor/yiisoft/yii2/db/ActiveRecord.php(476): yii\\db\\ActiveRecord->insertInternal(NULL)\n#4 /var/www/html/vendor/yiisoft/yii2/db/BaseActiveRecord.php(643): yii\\db\\ActiveRecord->insert(true, NULL)\n#5 /var/www/html/common/modules/dvizh/yii2-cart/src/models/tools/CartQuery.php(33): yii\\db\\BaseActiveRecord->save()\n#6 /var/www/html/common/modules/dvizh/yii2-cart/src/models/Cart.php(19): dvizh\\cart\\models\\tools\\CartQuery->my()\n#7 /var/www/html/common/modules/dvizh/yii2-cart/src/Cart.php(317): dvizh\\cart\\models\\Cart->my()\n#8 /var/www/html/common/modules/dvizh/yii2-cart/src/Cart.php(46): dvizh\\cart\\Cart->update()\n#9 /var/www/html/vendor/yiisoft/yii2/base/BaseObject.php(107): dvizh\\cart\\Cart->init()\n#10 /var/www/html/common/modules/dvizh/yii2-cart/src/Cart.php(40): yii\\base\\BaseObject->__construct(Array)\n#11 [internal function]: dvizh\\cart\\Cart->__construct(Object(dvizh\\cart\\models\\Cart), Object(dvizh\\cart\\models\\CartElement), Array)\n#12 /var/www/html/vendor/yiisoft/yii2/di/Container.php(381): ReflectionClass->newInstanceArgs(Array)\n#13 /var/www/html/vendor/yiisoft/yii2/di/Container.php(156): yii\\di\\Container->build('dvizh\\\\cart\\\\Cart', Array, Array)\n#14 /var/www/html/vendor/yiisoft/yii2/BaseYii.php(348): yii\\di\\Container->get('dvizh\\\\cart\\\\Cart', Array, Array)\n#15 /var/www/html/vendor/yiisoft/yii2/di/ServiceLocator.php(136): yii\\BaseYii::createObject(Array)\n#16 /var/www/html/vendor/yiisoft/yii2/di/ServiceLocator.php(73): yii\\di\\ServiceLocator->get('cart')\n#17 /var/www/html/frontend/views/layouts/main.php(62): yii\\di\\ServiceLocator->__get('cart')\n#18 /var/www/html/vendor/yiisoft/yii2/base/View.php(330): require('/var/www/html/f...')\n#19 /var/www/html/vendor/yiisoft/yii2/base/View.php(250): yii\\base\\View->renderPhpFile('/var/www/html/f...', Array)\n#20 /var/www/html/vendor/yiisoft/yii2/base/Controller.php(396): yii\\base\\View->renderFile('/var/www/html/f...', Array, Object(frontend\\controllers\\SiteController))\n#21 /var/www/html/vendor/yiisoft/yii2/base/Controller.php(382): yii\\base\\Controller->renderContent('\\n<main class="e...')\n#22 /var/www/html/vendor/yiisoft/yii2/web/ErrorAction.php(128): yii\\base\\Controller->render('error', Array)\n#23 /var/www/html/vendor/yiisoft/yii2/web/ErrorAction.php(107): yii\\web\\ErrorAction->renderHtmlResponse()\n#24 [internal function]: yii\\web\\ErrorAction->run()\n#25 /var/www/html/vendor/yiisoft/yii2/base/Action.php(94): call_user_func_array(Array, Array)\n#26 /var/www/html/vendor/yiisoft/yii2/base/Controller.php(156): yii\\base\\Action->runWithParams(Array)\n#27 /var/www/html/vendor/yiisoft/yii2/base/Module.php(523): yii\\base\\Controller->runAction('error', Array)\n#28 /var/www/html/vendor/yiisoft/yii2/web/ErrorHandler.php(97): yii\\base\\Module->runAction('site/error')\n#29 /var/www/html/vendor/yiisoft/yii2/base/ErrorHandler.php(111): yii\\web\\ErrorHandler->renderException(Object(yii\\db\\Exception))\n#30 [internal function]: yii\\base\\ErrorHandler->handleException(Object(yii\\db\\Exception))\n#31 {main}\n\nNext yii\\db\\Exception: SQLSTATE[HY000]: General error: 1364 Field 'user_id' doesn't have a default value\nThe SQL being executed was: INSERT INTO `cart` (`created_time`, `tmp_user_id`, `updated_time`) VALUES (1525598767, '6048e13ffb000273aeac5f04c00e6748', 1525598767) in /var/www/html/vendor/yiisoft/yii2/db/Schema.php:592\nStack trace:\n#0 /var/www/html/vendor/yiisoft/yii2/db/Command.php(969): yii\\db\\Schema->convertException(Object(PDOException), 'INSERT INTO `ca...')\n#1 /var/www/html/vendor/yiisoft/yii2/db/Schema.php(411): yii\\db\\Command->execute()\n#2 /var/www/html/vendor/yiisoft/yii2/db/ActiveRecord.php(509): yii\\db\\Schema->insert('{{%cart}}', Array)\n#3 /var/www/html/vendor/yiisoft/yii2/db/ActiveRecord.php(476): yii\\db\\ActiveRecord->insertInternal(NULL)\n#4 /var/www/html/vendor/yiisoft/yii2/db/BaseActiveRecord.php(643): yii\\db\\ActiveRecord->insert(true, NULL)\n#5 /var/www/html/common/modules/dvizh/yii2-cart/src/models/tools/CartQuery.php(33): yii\\db\\BaseActiveRecord->save()\n#6 /var/www/html/common/modules/dvizh/yii2-cart/src/models/Cart.php(19): dvizh\\cart\\models\\tools\\CartQuery->my()\n#7 /var/www/html/common/modules/dvizh/yii2-cart/src/Cart.php(317): dvizh\\cart\\models\\Cart->my()\n#8 /var/www/html/common/modules/dvizh/yii2-cart/src/Cart.php(46): dvizh\\cart\\Cart->update()\n#9 /var/www/html/vendor/yiisoft/yii2/base/BaseObject.php(107): dvizh\\cart\\Cart->init()\n#10 /var/www/html/common/modules/dvizh/yii2-cart/src/Cart.php(40): yii\\base\\BaseObject->__construct(Array)\n#11 [internal function]: dvizh\\cart\\Cart->__construct(Object(dvizh\\cart\\models\\Cart), Object(dvizh\\cart\\models\\CartElement), Array)\n#12 /var/www/html/vendor/yiisoft/yii2/di/Container.php(381): ReflectionClass->newInstanceArgs(Array)\n#13 /var/www/html/vendor/yiisoft/yii2/di/Container.php(156): yii\\di\\Container->build('dvizh\\\\cart\\\\Cart', Array, Array)\n#14 /var/www/html/vendor/yiisoft/yii2/BaseYii.php(348): yii\\di\\Container->get('dvizh\\\\cart\\\\Cart', Array, Array)\n#15 /var/www/html/vendor/yiisoft/yii2/di/ServiceLocator.php(136): yii\\BaseYii::createObject(Array)\n#16 /var/www/html/vendor/yiisoft/yii2/di/ServiceLocator.php(73): yii\\di\\ServiceLocator->get('cart')\n#17 /var/www/html/frontend/views/layouts/main.php(62): yii\\di\\ServiceLocator->__get('cart')\n#18 /var/www/html/vendor/yiisoft/yii2/base/View.php(330): require('/var/www/html/f...')\n#19 /var/www/html/vendor/yiisoft/yii2/base/View.php(250): yii\\base\\View->renderPhpFile('/var/www/html/f...', Array)\n#20 /var/www/html/vendor/yiisoft/yii2/base/Controller.php(396): yii\\base\\View->renderFile('/var/www/html/f...', Array, Object(frontend\\controllers\\SiteController))\n#21 /var/www/html/vendor/yiisoft/yii2/base/Controller.php(382): yii\\base\\Controller->renderContent('\\n<main class="e...')\n#22 /var/www/html/vendor/yiisoft/yii2/web/ErrorAction.php(128): yii\\base\\Controller->render('error', Array)\n#23 /var/www/html/vendor/yiisoft/yii2/web/ErrorAction.php(107): yii\\web\\ErrorAction->renderHtmlResponse()\n#24 [internal function]: yii\\web\\ErrorAction->run()\n#25 /var/www/html/vendor/yiisoft/yii2/base/Action.php(94): call_user_func_array(Array, Array)\n#26 /var/www/html/vendor/yiisoft/yii2/base/Controller.php(156): yii\\base\\Action->runWithParams(Array)\n#27 /var/www/html/vendor/yiisoft/yii2/base/Module.php(523): yii\\base\\Controller->runAction('error', Array)\n#28 /var/www/html/vendor/yiisoft/yii2/web/ErrorHandler.php(97): yii\\base\\Module->runAction('site/error')\n#29 /var/www/html/vendor/yiisoft/yii2/base/ErrorHandler.php(111): yii\\web\\ErrorHandler->renderException(Object(yii\\db\\Exception))\n#30 [internal function]: yii\\base\\ErrorHandler->handleException(Object(yii\\db\\Exception))\n#31 {main}\nAdditional Information:\nArray\n(\n    [0] => HY000\n    [1] => 1364\n    [2] => Field 'user_id' doesn't have a default value\n)\n\nPrevious exception:\nPDOException: SQLSTATE[HY000]: General error: 1364 Field 'user_id' doesn't have a default value in /var/www/html/vendor/yiisoft/yii2/db/Command.php:959\nStack trace:\n#0 /var/www/html/vendor/yiisoft/yii2/db/Command.php(959): PDOStatement->execute()\n#1 /var/www/html/vendor/yiisoft/yii2/db/Schema.php(411): yii\\db\\Command->execute()\n#2 /var/www/html/vendor/yiisoft/yii2/db/ActiveRecord.php(509): yii\\db\\Schema->insert('{{%cart}}', Array)\n#3 /var/www/html/vendor/yiisoft/yii2/db/ActiveRecord.php(476): yii\\db\\ActiveRecord->insertInternal(NULL)\n#4 /var/www/html/vendor/yiisoft/yii2/db/BaseActiveRecord.php(643): yii\\db\\ActiveR
Аватара пользователя
proctoleha
Сообщения: 298
Зарегистрирован: 2016.07.10, 19:00

Re: Перенести сайт на другой сервер

Сообщение proctoleha »

И?
Что вы лично думаете по: General error: 1364 Field 'user_id' doesn't have a default value?
И в выводе даже файл есть: var/www/html/common/modules/dvizh/yii2-cart/src/models/tools/CartQuery.php(33)
Никто кроме вас не разберется - копайте
Вот за что я не люблю линукс, так это за свои кривые, временами, руки
Justbox
Сообщения: 7
Зарегистрирован: 2018.05.04, 00:47

Re: Перенести сайт на другой сервер

Сообщение Justbox »

Да я не спорю что это мой геморой, но я не когда не работал c yii2, а задачу поставили перенести проект на сервер, что сделали, спасибо Dominus :

Код: Выделить всё

<?php
namespace dvizh\cart\models\tools;

use yii\web\Session;
use yii;

class CartQuery extends \yii\db\ActiveQuery
{
    public function my()
    {
        $session = yii::$app->session;

        //if(!$userId = yii::$app->user->id) { chanel delete cart after login
            if (!$userId = $session->get('tmp_user_id')) {
                $userId = md5(time() . '-' . yii::$app->request->userIP . Yii::$app->request->absoluteUrl);
                $session->set('tmp_user_id', $userId);
            }
            $one = $this->andWhere(['tmp_user_id' => $userId])->limit(1)->one();
        /*} else {
            $one = $this->andWhere(['user_id' => $userId])->limit(1)->one();
        }*/

        if (!$one) {
            $one = new \dvizh\cart\models\Cart();
            $one->created_time = time();
            if(yii::$app->user->id) {
                \yii\helpers\VarDumper::dump($userId, 10, 1);
                die;
                $one->user_id = $userId;
            }
            else {
                $one->tmp_user_id = $userId;
            }
            $one->updated_time = time();
                \yii\helpers\VarDumper::dump($one, 10, 1);
                die;
            $one->save();
        }
        
        return $one;
    }
}
Выходит вот такой текст:

Код: Выделить всё

dvizh\cart\models\Cart#1
(
    [dvizh\cart\models\Cart:element] => dvizh\cart\models\CartElement#2
    (
        [yii\db\BaseActiveRecord:_attributes] => []
        [yii\db\BaseActiveRecord:_oldAttributes] => null
        [yii\db\BaseActiveRecord:_related] => []
        [yii\base\Model:_errors] => null
        [yii\base\Model:_validators] => null
        [yii\base\Model:_scenario] => 'default'
        [yii\base\Component:_events] => []
        [yii\base\Component:_behaviors] => []
    )
    [yii\db\BaseActiveRecord:_attributes] => [
        'created_time' => 1525617896
        'tmp_user_id' => '7ce2ca32338a03abb848281aa07be6f7'
        'updated_time' => 1525617896
    ]
    [yii\db\BaseActiveRecord:_oldAttributes] => null
    [yii\db\BaseActiveRecord:_related] => []
    [yii\base\Model:_errors] => null
    [yii\base\Model:_validators] => null
    [yii\base\Model:_scenario] => 'default'
    [yii\base\Component:_events] => []
    [yii\base\Component:_behaviors] => null
)
что дальше делать не понимаю =(

Заранее благодарю всех !
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Перенести сайт на другой сервер

Сообщение zelenin »

Justbox писал(а): 2018.05.06, 17:46 Да я не спорю что это мой геморой, но я не когда не работал c yii2
но ошибка же - ошибка базы данных. С базами вы тоже не работали? Наймите программиста.
Аватара пользователя
Dominus
Сообщения: 892
Зарегистрирован: 2013.03.14, 21:27
Откуда: Россия, Иваново
Контактная информация:

Re: Перенести сайт на другой сервер

Сообщение Dominus »

Код: Выделить всё

VarDumper::dump($one, 10, 1);
die;
можно уже убрать. Это нужно было для того, что бы узнать что находится в модели перед сохранением)
Не спорь с дураком, иначе окружающие не правильно поймут кто из вас дурак!
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Перенести сайт на другой сервер

Сообщение ElisDN »

$userId пустой.
Justbox
Сообщения: 7
Зарегистрирован: 2018.05.04, 00:47

Re: Перенести сайт на другой сервер

Сообщение Justbox »

Dominus писал(а): 2018.05.06, 17:50

Код: Выделить всё

VarDumper::dump($one, 10, 1);
die;
можно уже убрать. Это нужно было для того, что бы узнать что находится в модели перед сохранением)
Убрал, на сайте снова в дебаге ошибка:

Код: Выделить всё

Exception
Database Exception – yii\db\Exception
SQLSTATE[HY000]: General error: 1364 Field 'user_id' doesn't have a default value
The SQL being executed was: INSERT INTO `cart` (`created_time`, `tmp_user_id`, `updated_time`) VALUES (1525618489, '7ce2ca32338a03abb848281aa07be6f7', 1525618489)
Error Info: Array
(
    [0] => HY000
    [1] => 1364
    [2] => Field 'user_id' doesn't have a default value
)
↵
Caused by: PDOException
SQLSTATE[HY000]: General error: 1364 Field 'user_id' doesn't have a default value
in /var/www/vendor/yiisoft/yii2/db/Command.php at line 959
Как задать user_id ?
Аватара пользователя
Dominus
Сообщения: 892
Зарегистрирован: 2013.03.14, 21:27
Откуда: Россия, Иваново
Контактная информация:

Re: Перенести сайт на другой сервер

Сообщение Dominus »

Так попробуй

Код: Выделить всё

if (!$one) {
            $one = new \dvizh\cart\models\Cart();
            $one->created_time = time();
            if(yii::$app->user->id) {               
                $one->user_id = yii::$app->user->id; // Может так должно быть?
            }
            else {
            	$one->user_id = 0;// или какое там значение определено по умолчанию
                $one->tmp_user_id = $userId;
            }
            $one->updated_time = time();               
            $one->save();
        }
Не спорь с дураком, иначе окружающие не правильно поймут кто из вас дурак!
Justbox
Сообщения: 7
Зарегистрирован: 2018.05.04, 00:47

Re: Перенести сайт на другой сервер

Сообщение Justbox »

Работает !!! Спасибо !
Ответить