These are chat archives for LaravelRUS/chat

20th
Jan 2017
orionych
@orionych
Jan 20 2017 06:50
Всех приветствую! Люди подскажите пожалуйста кто как делает обычно! Предположим вы хотите что-то делать по шаблону - например договора - кто как хранит эти шаблоны - на данный момент я делаю это путем установки primary id в отрицательные значения - то что больше 0 - все реальные значения - то что меньше - шаблоны - может у кого-то сделано более красиво? спасибо
KarmaBot
@KarmaBot
Jan 20 2017 06:50
Приветствую тебя, @orionych!
@orionych, в этом чате принято добавлять имя пользователя, чтобы его поблагодарить.
Ivan
@Hunternnm
Jan 20 2017 06:56
@orionych в бд такой изврат?
orionych
@orionych
Jan 20 2017 07:01
@Hunternnm да)
Ivan
@Hunternnm
Jan 20 2017 07:02
@orionych отдельная таблица не вариант?
orionych
@orionych
Jan 20 2017 07:02
@Hunternnm ну усложняет структуру же
@Hunternnm ты отдельными делаешь?
Ivan
@Hunternnm
Jan 20 2017 07:03
@orionych наоборот - упрощает. Такой задачи не стояло, но видно же что это - разные сущности. Шаблон и договор
orionych
@orionych
Jan 20 2017 07:04
@Hunternnm как раз я то их видел одними)
Ivan
@Hunternnm
Jan 20 2017 07:05
@orionych как их можно видеть одними, если это - разные сущности?
orionych
@orionych
Jan 20 2017 07:05
@Hunternnm не будем флеймить)
Alexander
@Dualse
Jan 20 2017 07:06

@Hunternnm как раз я то их видел одними)

+1 за это

Ivan
@Hunternnm
Jan 20 2017 07:06
@Dualse ты тоже за то, что это - одна и та же тема?
orionych
@orionych
Jan 20 2017 07:06
@Dualse спасибо)
KarmaBot
@KarmaBot
Jan 20 2017 07:06
Спасибо (+1) для @Dualse принято! Текущая карма +122.
Alexander
@Dualse
Jan 20 2017 07:06
@Hunternnm Да
У меня в магазине даже товары после импорта в отдельную таблицу ложатся, т.к. структура товаров при импорте и на самом сайте отличаются
orionych
@orionych
Jan 20 2017 07:07
@Dualse ты имеешь ввиду импорта из-за рубежа? или когда ты их из экселя тянешь
Alexander
@Dualse
Jan 20 2017 07:08
@orionych Когда тебе дают эксель с убогой структурой)
orionych
@orionych
Jan 20 2017 07:08
@Dualse понял)
MetaDone
@MetaDone
Jan 20 2017 07:08
@snutworks была бы актуальная база можно было бы наверно и попроще сделать
orionych
@orionych
Jan 20 2017 07:10
народ а подскажите - часто сталкиваюсь с тем что необходимо присваивать номер (например счета, контракта, спефикации) - то есть есть id - а есть реальный номер - кто их как называет обычно?
MetaDone
@MetaDone
Jan 20 2017 07:11
@orionych от предметной области зависит
orionych
@orionych
Jan 20 2017 07:15
@MetaDone ну продажи))
Ivan
@Hunternnm
Jan 20 2017 07:17
@orionych ты бы вопросы раскрывал свои. Зачем клещами тянуть подробности то? И продажи разные бывают
Andrei Sosnov
@atehnix
Jan 20 2017 07:45
@orionych а "реальный номер" откуда берется? Он является обязательным для заполнения и уникален в рамках таблицы?
fakefakefake12
@fakefakefake12
Jan 20 2017 07:48
@mikield а ты laravel-echo-server юзаешь? У него апишка есть
GET /apps/:APP_ID/channels/:CHANNEL_NAME/users
orionych
@orionych
Jan 20 2017 07:50
@atehnix ну вот делаешь ты счета в компании - каждый год с 1 же начинаешь - вот их реальный номер 1 - а по базе id у него совершенно другой и нумераций таких много (спефикации контракты и т.п.) я думал просто есть у кого какие красивые правила на этот счет - но если нет значит нет
Soprun Vladislav
@vlsoprun
Jan 20 2017 07:54
Здорова мужики!
dzham
@dzham
Jan 20 2017 08:07
@vlsoprun привет
Ivan
@Hunternnm
Jan 20 2017 08:08
@vlsoprun дароу
Nepster
@nepster-web
Jan 20 2017 09:02

Всем привет. Кто использует докер ? подскажите пожалуйста такой момент: я настроил сборку, все работает. Но при коннекте с базой, laravel5 плюет ошибку.

 [PDOException]                                                                                  
  SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known

все бы ничего, но вот только, но вот только в контроллере, вот этот код коннектится без проблем:


$dns = 'mysql:host='. env('DB_HOST') .';port='. env('DB_PORT') .';dbname=' . env('DB_DATABASE');
$user = env('DB_USERNAME');
$pass = env('DB_PASSWORD');

try {
    $conn = new PDO($dns, $user, $pass);

} catch (PDOException $e) {
    print "Error!: " . $e->getMessage() . "<br/>";
}
KarmaBot
@KarmaBot
Jan 20 2017 09:02
Прувет, @nepster-web!
MetaDone
@MetaDone
Jan 20 2017 09:08
@nepster-web не резолвится адрес
@nepster-web docker/docker#541
Dave
@aios
Jan 20 2017 09:10
а конфиги скинь?
Nepster
@nepster-web
Jan 20 2017 09:13
version: '2'
services:
    nginx:
        container_name: travellizy_nginx
        build: ./docker/nginx
        restart: always
        ports:
            - "8080:80"
        volumes:
            - ./www:/www
            - ./docker/nginx/nginx.conf:/etc/nginx/conf.d/site.conf
            - ./docker/nginx/log:/var/log/nginx
        links:
            - php
            - mysql

    php:
        container_name: travellizy_php
        build: ./docker/php
        restart: always
        volumes:
            - ./www:/www
        links:
            - mysql

    mysql:
        container_name: travellizy_db
        build: ./docker/db/mysql
        restart: always
        environment:
            MYSQL_ROOT_PASSWORD: travellizy
            MYSQL_DATABASE: travellizy
            MYSQL_USER: travellizy
            MYSQL_PASSWORD: travellizy
        volumes:
            - ./docker/db/mysql/conf.d:/etc/mysql/conf.d
            - ./docker/db/mysql/log:/var/log/mysql
KarmaBot
@KarmaBot
Jan 20 2017 09:13
@nepster-web, чтобы показать длинный листинг кода желательно использовать pastebin-сервис, например gist.github.com или laravel.io/bin.
Dave
@aios
Jan 20 2017 09:14
да нет
ENV
Nepster
@nepster-web
Jan 20 2017 09:14
APP_ENV=local
APP_DEBUG=true
APP_KEY=
APP_TIMEZONE=UTC

DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=travellizy
DB_USERNAME=travellizy
DB_PASSWORD=travellizy

CACHE_DRIVER=file
QUEUE_DRIVER=sync
как раз следующий летел
DB_HOST в качестве имени сервиса и на чистом пдо все работает.
Dave
@aios
Jan 20 2017 09:15
а docker ps
что показывает.
Nepster
@nepster-web
Jan 20 2017 09:15
CONTAINER ID        IMAGE                  COMMAND                  CREATED             STATUS              PORTS                           NAMES
d41d4250e27e        test_nginx             "nginx -g 'daemon off"   41 minutes ago      Up 41 minutes       443/tcp, 0.0.0.0:8080->80/tcp   travellizy_nginx
a9d889ab65d4        test_php               "docker-php-entrypoin"   41 minutes ago      Up 41 minutes       9000/tcp                        travellizy_php
f1b59af09221        test_mysql             "docker-entrypoint.sh"   41 minutes ago      Up 41 minutes       3306/tcp                        travellizy_db
b45d80ba5a5a        docker/compose:1.9.0   "/usr/bin/docker-comp"   41 minutes ago      Up 41 minutes                                       pedantic_mestorf
вроде все по закону
так и есть, в качестве хоста имя сервиса
Dave
@aios
Jan 20 2017 09:16
да как бы странновато
Nepster
@nepster-web
Jan 20 2017 09:16
вот вот. учитывая, что систый пдо коннектит
а тот-же пдо но внутри laravel нет
Dave
@aios
Jan 20 2017 09:17
а погляди может у тебя ENV не отрабатывает
и он берет пустые значения
Ivan
@Hunternnm
Jan 20 2017 09:18
а ports докеру прописать не надо?
Nepster
@nepster-web
Jan 20 2017 09:18
я скажу, больше я заходил в
Illuminate\Database\Connection; проверял входящие данные они такие-же самые
@Hunternnm нудно, если хочешь прокинуть порт на основную машину, у меня там уже есть mysql
я бы этого хотел избежать
точнее вот тут Illuminate\Database\Connectors\Connector
Artem Bogomolov
@TheDeveloperTom_twitter
Jan 20 2017 09:21

Ребята привет :)
Нужна Ваша подсказка.

Как реализовать данную вещь.
"tables of users and user action ( login ok, login error, page view(request & document ready"

Я имеею ввиду структуру базы.

Заранее Благодарю!

Maksim
@Stereotip42
Jan 20 2017 09:31
Друзья, помогите пожалуйста с задачей. Есть уведомления. Как мне разослать их только определенным пользователям, не могу понять. Т.е. при определенном экшене на бэкэнде нужно сделать рассылку 3 юзерам, из 100. Как это сделать?
В голову приходит только крутить в цикле создание уведомления, а в канале подписки уведомления делать что-то типа somenotification . $userId. И редисом слушать все каналы, и отправлять всем пользователям через сокет уведомеление, при этом на фронтенде слушать такой же канал somenotification . $userId. Но на фронтенде то чел может и поменять свой user_id. Как с этим быть, не очень понимаю
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 09:48
@nepster-web Внутри докера попробуй коннектится из под айпишника докера, т.е. 172.17.0.1
ещё можно добавить что-то вроде такого:
        extra_hosts:
            - "mysql:172.17.0.1"
были там какие-то косяки с этими хостами, так что я предпочитаю наверняка =)
JhaoDa
@jhaoda
Jan 20 2017 10:16
@nepster-web все вопросы по докеру, nginx, apache, юниксам, болям в левом подреберье и чорту лысому следует задавать в https://gitter.im/LaravelRUS/offtop
projct1
@projct1
Jan 20 2017 11:03
подскажите плз, почему правило regex срабатывает если status_id != 1, я же указал, что требуется проверка только если status_id = 1
'phone' => 'required_if:status_id,1|regex:~^[94]\d{9}$~',
@jhaoda отбань меня плз на оффтопе, уже больше месяца зайти не могу...
user911
@user911
Jan 20 2017 12:01
Привет всем!
Подскажите, пжлста, как можно сохранить текст в view (blade.php) из кода?
KarmaBot
@KarmaBot
Jan 20 2017 12:01
Привет, @user911! Проходи, присаживайся. В ногах правды нет :)
user911
@user911
Jan 20 2017 12:02
@KarmaBot да я как бы и так сижу :)
Alexander
@spartaque
Jan 20 2017 12:02
@rorc ты указал что оно обязательно если status_id == 1, а не регекспить его если status_id == 1
@user911 File::put()?
user911
@user911
Jan 20 2017 12:03
я пробовал делать storage::put
нужно попробовать file :)
projct1
@projct1
Jan 20 2017 12:10
@spartaque а как сделать чтобы регекспилось только если status_id == 1
user911
@user911
Jan 20 2017 12:11
@spartaque спасибо за правильное направление!
projct1
@projct1
Jan 20 2017 12:14
подскажите как сэмулировать аякс реквест вручную?
пробовал так, но не работает new Request([], $data, [], [], [], ['X-Requested-With' => 'XMLHttpRequest'])
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 12:26
@rorc а Accept пробовал добавлять?
projct1
@projct1
Jan 20 2017 12:27
@SerafimArts куда? нет такого правила, есть только accepted
JhaoDa
@jhaoda
Jan 20 2017 12:27
@rorc ололо...
projct1
@projct1
Jan 20 2017 12:28
@SerafimArts или ты про создание реквеста?
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 12:28
@rorc я намекаю на то, что аякс запрос никак не отличается от какого-то иного
projct1
@projct1
Jan 20 2017 12:29
@SerafimArts вообще когда делаю (new Request([], $data, [], [], [], ['X-Requested-With' => 'XMLHttpRequest']))->headers то пустые массивы получаю
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 12:29
осталось только подобрать нужные заголовки
а указанный XMLHttpRequest - это для XHR запросов, причём он указывается руками
т.е. в случае fetch аякс запроса, вместо xhr - этот заголовок не подходит ни физически, ни семантически
как следствие - требуется другая харакетристика, которая отличает ajax, от другого
и в 99% случаях это требование от сервера отдачи данных в json
projct1
@projct1
Jan 20 2017 12:31
@SerafimArts вообще у меня задача запустить вручную свой FormRequest, который можно вызвать только через app(OrderRequest::class)
но тогда он берёт данные из текущего реквеста, где валидируемые данные хранятся под ключём order.
а в правилах валидации у меня данные все от корня ((

@SerafimArts поэтому пытаюсь сделать нечто вроде такого кастыля

$selectionRequest = new SelectionRequest([], $request->selection, [], [], [], ['X-Requested-With' => 'XMLHttpRequest']);
$this->validate($selectionRequest, $selectionRequest->rules(), $selectionRequest->messages());

но это не работает, так как реквест не аяксовский и срабатывает 302 редирект

JhaoDa
@jhaoda
Jan 20 2017 12:33
А, снят вопрос, ты решил удалять гланды перректально и это уже не форм реквесты
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 12:34
@rorc чем аяксовый запрос отличается для сервера от не аяксового?
projct1
@projct1
Jan 20 2017 12:34
не думал что такая вроде бы простая операция окажется такой тяжёлой
@SerafimArts наличием заголовков своих, например 'X-Requested-With' => 'XMLHttpRequest'
Alexander
@spartaque
Jan 20 2017 12:36
@rorc так а почему 302 отдаешь для не ajax запросов? У тебя там явно есть дич по пути к форм реквусту
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 12:36
@rorc XMLHttpRequest - это НЕ аякс
это XMLHttpRequest
аякс - это технология
XMLHttpRequest - это один из интерфейсов
помимо него есть ещё XHR2 и fetch
projct1
@projct1
Jan 20 2017 12:37
@spartaque 302 фреймворк сам автоматом отдаёт если валидация провалилась
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 12:37
я уж не говорю про извращения, а просто указал 3 разных интерфейса
projct1
@projct1
Jan 20 2017 12:38
@SerafimArts ну как сделать то ЯКОБЫ АЯКС реквест чтобы лара поняла о чём я и вернула json а не редиректила
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 12:39
@rorc прочитай выше, я уже всё настолько подробно расписал, что дальше некуда
осталось голову включить и чуть-чуть подумать =)
projct1
@projct1
Jan 20 2017 12:40
@SerafimArts нифига не понятно :)
придётся всё-таки дублировать правила...
даже всемогущий @jhaoda молчит по этому поводу и не шлёт в доки :)
JhaoDa
@jhaoda
Jan 20 2017 12:44
@rorc да толку тебя в доки слать
Ты прочитал нужный абзац и дальше ни-ни
projct1
@projct1
Jan 20 2017 12:45
@jhaoda ну в данном случае в доках нет ответа потому что)
Artur Gafurov
@assurrussa
Jan 20 2017 12:45
:smile:
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 12:47
@rorc ок, даю ещё один намёк
у HTTP есть стандартный список хедеров
осталось только найти их и....
projct1
@projct1
Jan 20 2017 12:49
@SerafimArts :smiling_imp:
@SerafimArts @spartaque @jhaoda короче нашёл самое, на мой взгляд, грамотное решение:
в классе своего реквеста просто перегрузил функцию
    protected function validationData()
    {
        return $this->input('selection', $this->all());
    }
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 12:53
:shipit:
projct1
@projct1
Jan 20 2017 12:54
ну и спокойно уже можно вызвать вручную реквест app(SelectionRequest::class);
единственный вопрос для полного счастья остался открытым по поводу валидации
'phone' => 'required_if:status_id,1|regex:~^[94]\d{9}$~'
как сделать чтобы regex срабатывал только если status_id равен 1.., кроме создания кастомного правила типа regexp_if:status_id,1
:)
projct1
@projct1
Jan 20 2017 13:30
как думаете, стоит ли делать проверки после каждой вставки/обновления/ассоциирования моделей?
или лучше напистаь так и не париться $order->comments()->save((new Comment(['body' => $request->comment]))->admin()->associate(Auth::id()));
или лучше так:
                $selection = Selection::create($request->selection);

                if (!$selection->id) {
                    $this->abort('Не удалось создать подборку :(');
                }

                if (!$selection->admin()->associate(Auth::id())->save()) {
                    $this->abort('Не удалось привязать админа к подборке :(');
                }
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 13:41
@Hunternnm баярлалаашечки
KarmaBot
@KarmaBot
Jan 20 2017 13:41
Спасибо (+1) для @Hunternnm принято! Текущая карма +304.
Ваня Devium
@webdevium
Jan 20 2017 13:49
@SerafimArts ты шо творишь?)
Ivan
@Hunternnm
Jan 20 2017 13:49
@SerafimArts о_О
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 13:50
@webdevium MAGIC!
Ваня Devium
@webdevium
Jan 20 2017 13:50
@SerafimArts я так и понял
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 13:50
а что не так-то? Я за :point_up: 20 января 2017 г., 16:21
Ivan
@Hunternnm
Jan 20 2017 13:51
@SerafimArts даже я не догадался
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 13:52
@webdevium шщарнцкщш7пруш7рапшгврашгпро324и213екбаярлалаа!
KarmaBot
@KarmaBot
Jan 20 2017 13:52
Спасибо (+1) для @webdevium принято! Текущая карма +95.
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 13:52
Ну просто потому что пятница, почему нет? =)
Ваня Devium
@webdevium
Jan 20 2017 13:54
ого у меня карма)))
пашти сотка
Ivan
@Hunternnm
Jan 20 2017 13:54
@vlsoprun thx
KarmaBot
@KarmaBot
Jan 20 2017 13:54
Спасибо (+1) для @vlsoprun принято! Текущая карма +291.
Ivan
@Hunternnm
Jan 20 2017 13:54
ох епт, почти догнал
Soprun Vladislav
@vlsoprun
Jan 20 2017 13:55
@Hunternnm thx
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 13:55
опять бота накрыло =(
Soprun Vladislav
@vlsoprun
Jan 20 2017 13:55
@Hunternnm спасибо
KarmaBot
@KarmaBot
Jan 20 2017 13:55
Спасибо (+1) для @Hunternnm принято! Текущая карма +305.
Soprun Vladislav
@vlsoprun
Jan 20 2017 13:55
@SerafimArts не, это я крЯвой. htx набрал
Ваня Devium
@webdevium
Jan 20 2017 13:56
@vlsoprun крявун :)
Soprun Vladislav
@vlsoprun
Jan 20 2017 13:56
@webdevium Да )))
Anton Kartsev
@bigperson
Jan 20 2017 14:44
Всем привет. Народ подскажите что может означать ошибка:
XMLHttpRequest cannot load ...api/user/upload-avatar. Redirect from '...api/user/upload-avatar' to '...login' has been blocked by CORS policy: Request requires preflight, which is disallowed to follow cross-origin redirect. Пытаюсь загрузить файл через api. Предварительный OPTIONS запрос возвращает код 200, а текущий 302. Ничего не понимаю
KarmaBot
@KarmaBot
Jan 20 2017 14:44
Hello, @bigperson!
JhaoDa
@jhaoda
Jan 20 2017 14:48
@bigperson ты видишь, что там редирект? Видишь.
Anton Kartsev
@bigperson
Jan 20 2017 14:49
@jhaoda Вижу, не могу понять откуда он
JhaoDa
@jhaoda
Jan 20 2017 14:49
@bigperson а ты видишь, КУДА редирект?
Anton Kartsev
@bigperson
Jan 20 2017 14:52
@jhaoda видеть то вижу, не пойму откуда он вылезает. не должно быть редиректов, максимум 403 ошибка
JhaoDa
@jhaoda
Jan 20 2017 14:52
@bigperson т.е. этот роут не закрыт мидлварей Authenticate?
Anton Kartsev
@bigperson
Jan 20 2017 14:58
@jhaoda Понял. Роут закрыт. Видимо с заголовками проблема. Еще вопрос тогда в Illuminate\Auth\Middleware\Authenticate нету никаких редиректов, не могу найти где этот редирект прописан
JhaoDa
@jhaoda
Jan 20 2017 14:58
@bigperson в обработчике ошибок он
Anton Kartsev
@bigperson
Jan 20 2017 14:59
@jhaoda Спасибо нашел
KarmaBot
@KarmaBot
Jan 20 2017 14:59
Спасибо (+1) для @jhaoda принято! Текущая карма +1419.
alexeytitov94
@alexeytitov94
Jan 20 2017 15:07
Как задать для route, что бы он обрабатывал 2 метода Route::get('/', 'IndexController@index') + еще один метод?
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 15:09
alexeytitov94
@alexeytitov94
Jan 20 2017 15:15
а пример как это будет выглядеть можно?
JhaoDa
@jhaoda
Jan 20 2017 15:16
@alexeytitov94 ты не стал читать, да? Потому что там есть пример
alexeytitov94
@alexeytitov94
Jan 20 2017 15:31
Прочитал, понял, спасибо
KarmaBot
@KarmaBot
Jan 20 2017 15:31
@alexeytitov94, в этом чате принято добавлять имя пользователя, чтобы его поблагодарить.
alexeytitov94
@alexeytitov94
Jan 20 2017 15:31
@SerafimArts Спасибо
KarmaBot
@KarmaBot
Jan 20 2017 15:31
Спасибо (+1) для @SerafimArts принято! Текущая карма +671.
asvae
@asvae
Jan 20 2017 16:46

Всем привет.
Дано:
Есть компонент - эндпоинт - валидатор - сервис - репозиторий, которые работают с частичной энтитей. Т.е., допустим, у юзера есть проекты. И все эти блоки работают именно с проектами юзера, а не со всеми проектами.
Зачем:

  • чтоб при создании проекта пользователь прилеплялся автоматически. (create)
  • чтоб при отсутствии у юзера проекта по id, выпадала 404, а не 403. Пользователю незачем знать, какие проекты есть вообще. (update/delete)
  • чтоб выборка автоматом лепила фильтр по where, без хитроумного его пропихивания. (index)

Что есть сейчас:
Есть UserProjectServiceс методами create, index и т.п. , который в конструкторе ловит инстанс юзера. По запросу, он лепит недостающие выборки, кидает 404, если юзер не совпадает

Что хотелось бы:
Чтоб архитектурное решение было реюзабельным, без тысяч копипасты по сервисам.

Прошу поделиться опытом. Стек — лара + доктрина.

KarmaBot
@KarmaBot
Jan 20 2017 16:46
Прувет, @Asvae!
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 16:48
@asvae твой вопрос надо ставить в пример всем, кто их задаёт
asvae
@asvae
Jan 20 2017 16:52
Диплом будет? : 3
Ivan
@Hunternnm
Jan 20 2017 17:39
@asvae PR с ачивкой сделай :laughing:
Ваня Devium
@webdevium
Jan 20 2017 18:21
красиво красиво спросил...)))
Ivan
@Hunternnm
Jan 20 2017 18:30
ответов это не прибавило =)
asvae
@asvae
Jan 20 2017 19:08
У меня пока план в голове примерно следующий. По специализации/отсутствии таковой, имею в виду между соответствующими блоками модулей UserProject и Project
  • Компонент / эндпоинт / контроллер - специализированные.
  • Валидатор будет работать с инстантом репо, т.е правило будет типа |exists-in-repo:\Repos\UserProjectRepo валидатор будет частично связан.
  • Сервисом, если повезет, может получиться одним обойтись. Если нет, то он будет сильно связан с родительским.
  • Репо для юзер проектов будет стейтфул. Или можно смотреть на него, как обслуживающее шард дб. Типа, вроде как, другая таблица. И таблицу мы подпихиваем в конструктор. Репо наверное будет декоратором над родительским.
@Hunternnm // ответов это не прибавило
Ща еще ачивку за ответ отожму : 3.
Торопитесь, количество ачивок ограничено.
arimanov
@arimanov
Jan 20 2017 20:40
Ребятки, что-то совсем туплю. Как вывести во вьюхе файл (картинка, mp3) полученный c помощью Storage?
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 20:43
@arimanov StreamResponse
Maxim
@Big-Shark
Jan 20 2017 20:45
https://habrahabr.ru/post/320046/ мдаа, статейки пошли дичь просто
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 20:45
+1
Maxim
@Big-Shark
Jan 20 2017 20:45
@arimanov что значит вывести файл?
arimanov
@arimanov
Jan 20 2017 20:47
@Big-Shark Отобразить на странице
Maxim
@Big-Shark
Jan 20 2017 20:47
@arimanov как ты отображать мп3 собрался?
arimanov
@arimanov
Jan 20 2017 20:49
@Big-Shark Ну через тег <audio> например
Maxim
@Big-Shark
Jan 20 2017 20:49
@arimanov ок, то есть тебе нужно получить путь до файл, верно?
Kirill Nesmeyanov
@SerafimArts
Jan 20 2017 20:49
так я ж уже ответил, не?
arimanov
@arimanov
Jan 20 2017 20:50
@SerafimArts Да, я уже читаю, спасибо!
KarmaBot
@KarmaBot
Jan 20 2017 20:50
Спасибо (+1) для @SerafimArts принято! Текущая карма +672.
JhaoDa
@jhaoda
Jan 20 2017 20:57

@Big-Shark прелесть просто

Потому что то решение, которое написал я, быстрее написать, чем установить и настроить пакет socialite.

JhaoDa
@jhaoda
Jan 20 2017 21:41

Я являюсь WEB разработчиком с более чем 10-летним стажем. Помимо этого, я также и системный аналитик.

Фак. Мой. Мозг!!!

Alexander
@Dualse
Jan 20 2017 22:05
@jhaoda Если дата рождения не врет, то чуваку почти 40. Должен быть уже вполне серьезный человек)
JhaoDa
@jhaoda
Jan 20 2017 22:17
@Dualse ты на код посмотри, это же ужоснах
Alexander
@Dualse
Jan 20 2017 22:19
@jhaoda Ну я был только первый абзац прочитал. Хотя... Ты наверно просто не понимаешь, как пишутся не стандартные решения xD

public function login(Request $request) {
$data = file_get_contents('http://ulogin.ru/token.php?token=' . $_POST['token'] . '&host=' . $_SERVER['HTTP_HOST']);

Разве не достаточно "не стандартно" ?)

Ну и обязательно надо работать с массивов, вместо объекта:

$user = json_decode($data, TRUE);

Dave
@aios
Jan 20 2017 22:32
@Dualse Ахахах проорал от души)))
(Request $request) и ' . $_POST['token'] . '&ho
Роман Сохарев
@greabock
Jan 20 2017 23:10
@Big-Shark Акууулыыыч!
Maxim
@Big-Shark
Jan 20 2017 23:10
@greabock шо?
Роман Сохарев
@greabock
Jan 20 2017 23:10
@Big-Shark я скучал...
XD
Maxim
@Big-Shark
Jan 20 2017 23:10
@jhaoda вот я также думал когда читал все это, а потом глянул в профиль
@greabock как мило)
Роман Сохарев
@greabock
Jan 20 2017 23:17

По сабжу... человек понятия не имеет, как работать ларкой

Я являюсь WEB разработчиком с более чем 10-летним стажем...

судя по коду

. $_POST['token'] . '&host=' . $_SERVER['HTTP_HOST'])

он уже лет десять не разрабатывал...

Maxim
@Big-Shark
Jan 20 2017 23:20
А кто кстати вообще что думает про этот uLogin? Как по мне гавно полное.
Роман Сохарев
@greabock
Jan 20 2017 23:39
@Big-Shark да ну че смеяться то?
Maxim
@Big-Shark
Jan 20 2017 23:40
@greabock ну может кто-то использует у себя и очень рад)