Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Как вариант:
1) в каком-то конфиге хранятся данные для доступа ко всем базам
2) в сервисПровайдере определяем какая БД нужна и переписываем данные для доступа к БД
3) в Контроллере авторизации пользователя пишем в сессию id базы, переназначаем данные для доступа к БД.
А пользователь есть во всех базах?
Т.е. базы идентичны?
Спасибо! ))
Нашел еще пакет https://github.com/greabock/tentacles
и статья в тему https://gist.github.com/greabock/48787baab768b519f21c
Но почитал про DDD и уже передумал так делать ))
1. Проверить, не отключено ли в броузере принятие куки. Попробовать другой броузер
2. Проверить наличие папки на сервере /storage/framework/sessions и права на неё
Посмотрите в сторону whereHas в мануале.
Я свой helper делаю для таких случаев.
php artisan dumpautoload
Привет!
Хочу реализовать модульность - распихать по папкам.
Например:
- Modules
-- User
-- Blog
-- Article
В каждом модуле есть модель User
в User - основная
в остальных - добавляющая связи с моделями Blog и Article, соответственно.
class BlogUser extends \App\Modules\User\User {
public function blogs()
{
return $this->hasMany('App\Modules\Blog\Blog', 'user_id', 'id');
}
}
Вопрос такой - как "главная" модель \App\Modules\User\User узнает о дочерних моделях?
В какой момент их подгружать и как? Или в какую сторону "курить"..
Подскажите, пожалуйста ))
Благодарю!!
Под "неэлегантным" я подразумеваю что-то вроде:
$persons = [
'name'=>[
0=> 'Vasya',
1=>'Petya',
2=>'Kolya'
],
'street' =>[
0=>'Lenina',
1=>'Marksa',
2=>'Engelsa'
]
];
$people=[];
foreach($persons as $fieldName => $fields){
foreach($fields as $k => $field){
$people[$k][$fieldName] = $field;
}
}
Всем привет!
Подскажите, пожалуйста, элегантное решение для преобразования массива вида
$persons = [
'name'=>[
0=> 'Vasya',
1=>'Petya',
2=>'Kolya'
],
'street' =>[
0=>'Lenina',
1=>'Marksa',
2=>'Engelsa'
]
];
в
[
0 => [
'name' => "Vasya",
'street' => "Lenina"
],
1 => [
'name'=>"Petya"
'street' => "Marksa"
],
2 => [
"name'=>"Kolya"
'street' => "Engelsa"
]
]
Нужно для создания relationship моделей на основе формы. Или может форму по другому сформулировать?
Спасибо!
Здесь есть хорошее видео про фильтрацию ресурсов (на русском)
https://www.youtube.com/channel/UC3n8EP … mXjbpGdmIA
Перерыл пол интернета.
Не выдает ошибки после проверки формы на странице формы.
Само исключение было:
"The given data was invalid."
Проблема была в некорректном upgrade с предыдущей версии.
Сравнивал свою и 5.6 версию /app/Http/Kernel.php
Нашел файл, которого у меня не было:
/app/Http/Middleware/TrimStrings.php
Добавил.
Ошибки отображаются.
Просто оставлю это здесь.
Не понял, что используется модуль.
Не очень понятен вопрос.
1) В таблице ArticleTranslation есть article_id?
2) В модели не вижу связи ArticleTranslation и Article
3) Может имеет смысл убрать из таблицы Article поля, которые есть в ArticleTranslation: title, body ? И хранить все тексты в одном месте.
4) Не вижу столбца lang в ArticleTranslation
По этой ошибке тут пишут https://laravel-news.com/laravel-5-4-key-too-long-error
Замените в файле миграции users вот эту часть. Это из "чистой" установки
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('email')->unique()->nullable();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
}
Что-то не сходится. В artisan migrate:status в колонке Run стоит N для всех миграций.
Т.е. миграции не выполнились, а в сообщении говорится, что таблица есть.
1. Попробуйте переместить куда-то на время файл миграции категории. и еще раз запустите artisan migrate.
Он должен вывести "Nothing to migrate."
2. Перенесите миграцию user, если она ему не нравится. Но это непонятный путь.
1. Сейчас команда artisan migrate ошибок не выдает?
2. Что выводит команда artisan migrate:status ?
3. Имя файла миграции для категорий?
() Вы запускаете artisan в папке того проекта? )) На всякий случай
Создалось 2 таблицы: users и migration, да? Хорошо.
Файл миграции для таблицы categories в папке database/migrations ?
значит не в той базе удалили. или не в ту базу пишет миграция.
Проверьте в файле .env
DB_DATABASE="Та база"?
А что хотели получить? Зачем эта выборка?
Он Вам пишет, что таблица users уже существует.
Т.е. при запуске artisan migration, скрипт выполняет все миграции, которые ранее не были выполнены.
Возможно, таблицу users Вы создавали вручную, а потом создали миграцию.
Если Вам эту таблицу users не жалко, удалите ее. Или переименуйте, выполните миграцию, а потом переименуйте обратно ))
1) Мало данных. Вы предоставили часть шаблона. А что в выводе?
$user_list = Users::where("role_id","!=",1)->get();
if($row['user_id'] < 1){
$row['user_id'] = 7;
}
По-моему, это не рабочий код.