Andrey
Antonio
Maksim (Ellrion)
Daniil 👾
dd($this->SoapService->getClient('http://url'));
Daniil 👾
строка
Daniil 👾
или оно не так работает?
Maksim (Ellrion)
в конструкторе контроллера
Daniil 👾
то есть значение $wsdl мне надо определить заранее?
Maksim (Ellrion)
ну просто задай себе вопрос. как контейнер поймет что туда ложить?
так же у тебя $this->SoapService тут ты вызываешь, но где оно заполняется?
Daniil 👾
я так полагал, что то что в скобках у
$this->SoapService->getClient('')
и есть тот параметр, что я хочу обработать
Maksim (Ellrion)
ты базовые принципы ООП в php не понимаешь? как создаются объекты, что такое методы, поля?
Daniil 👾
да. Я не могу понять конкретно способ реализации всего этого в laravel
Maksim (Ellrion)
нет ты не в ларе это не понимаешь судя по всему а именно вообще базово. стоит сначало разобраться с этим
Maksim (Ellrion)
причем тут та строка из метода контроллера и конструктор контроллера?
Daniil 👾
я уже ни в чем не уверен. Документация по теме "сервис-контейнеры" и "провайдеры" написана, кажется, для senior и то понимается лишь с годами)
Daniil 👾
смотрю на примеры и хоть убей, не вижу разницы в коде у них и у меня
Daniil 👾
но в примерах - вроде работает)
Maksim (Ellrion)
Сервис:
class SomeConcreteSoapService
{
protected $wsdl;
protected $client;
public function __construct($wsdl) {
$this->wsdl = $wsdl;
}
public function getClient() {
if (null === $this->client) {
$this->client = new \SoapClient($this->wsdl);
}
return $this->client;
}
}
Провайдер (не в буте а в регистре):
//in Provider
public function register()
{
$this->app->bind(\App\Magic\SomeConcreteSoapService::class, function ($app) {
return new \App\Magic\SomeConcreteSoapService($app->config['services.some_concrete.wsdl']);
});
}
Контроллер:
class HomeController extends Controller
{
public function index(SomeConcreteSoapService $soap) {
$soap->getClient();
}
}
Daniil 👾
спасибо, кажется я понял, где допустил ошибку. Хотя теперь возникают вопросы, а всё ли в порядке в самой документации, с их примерами
Maksim (Ellrion)
уверен что всё впорядке. ты просто не догоняешь)
Daniil 👾
наверное. Теория - это одно. А практика - совсем другое)
Эмин
Просто вы относитесь к системе как к чему то магическому)
Эмин
следует залезть в исходники и понять каким образом контейнер собирает для вас зависимости
Эмин
там пару методов то
Illia
✋
Эмин
Ар
🖐🏿
Daniil 👾
фух, вроде более менее понял принципы сервис-контейнеров. По крайней мере работает так, как задумано)
Daniil 👾
спасибо @ellrion
Maksim (Ellrion)
Maksim (Ellrion)
кто пользуется подключением к базам в шторме. кто знает нафига появилась в 2017.3 новая папка и как ее убрать
http://joxi.ru/gmvQY4cxbnWNra
Illia
что внутри файлов?
Maksim (Ellrion)
это не файлы. это тупо список
Эмин
у меня ничего не появилось
Эмин
действительно приехало...
Эмин
такое ощущение что это список кодировок которые поддерживает база
Maksim (Ellrion)
дак это оно и есть. вопрос не в том что это. вопрос в том нафига оно появилось и главное как убрать
Pavel
сверни и не разворачивай
Maksim (Ellrion)
совет пять балов, а я то думал как мне быть)
Pavel
ну если это единственная проблема, которая тебя беспокоит, то у тебя все хорошо)
Pavel
ну серьезно, это же фича. Она не навязчива.
Maksim (Ellrion)
она какраз навязчива. раньше я сразу попадал в схеммы теперь это папка
Maksim (Ellrion)
нет понятно что это фигня. но мб оно как то отрубается. ибо смысла фичи 0
Nikita
Всем привет. Пытаюсь к проекту на Laravel прикрутить React.JS – https://www.npmjs.com/package/laravel-mix-react – сделал как указано в статье, но при запуске nmp install dev получаю ошибку, что:
TypeError: Mix.initialize is not a function
at Object.<anonymous> ({project_dir}/node_modules/laravel-mix-react/setup/webpack.config.js:18:5)
#react #laravel-mix-react
Может помочь кто, люди добрые?
Полная переустановка зависимостей не помогла :(
Arthur'); DROP TABLE Users;--
Nikita
Спасибо, в соседнем чатике тоже пресеты посоветовали. Только они с 5.5, а у меня 5.4.
Вопрос откладывается – попробую обновить лару, а потом вернусь.
Arthur'); DROP TABLE Users;--
привет. шарит кто в relations? а то накопилось костылей и говнокода типа:
MentorFollower::create([
'mentor_id' => $mentor->id,
'user_id' => $user->id
]);
у меня есть модели:
user
id
mentor
id
mentor follower
id | mentor_id | user_id
какой relation нужен для $user->mentor и $mentor->followers? (у каждого юзера может быть только один ментор)
для второго я юзаю так, но я получаю НЕ модель пользователей
public function followers()
{
return $this->hasMany(MentorFollower::class);
}
Dmitry
Dmitry
что в этой моделе?
Arthur'); DROP TABLE Users;--
Arthur'); DROP TABLE Users;--
всё что есть в ней, я написал
Arthur'); DROP TABLE Users;--
да
Arthur'); DROP TABLE Users;--
mentor тоже user, просто не каждый
Dmitry
да
тогда зачем ты ее как модель выносил? Это же просто связь многие ко многим
Arthur'); DROP TABLE Users;--
ооой
Arthur'); DROP TABLE Users;--
что-то да
Arthur'); DROP TABLE Users;--
забыл
Arthur'); DROP TABLE Users;--
Dmitry
$mentor->followers
public function followers()
{
return $this->belongsToMany(User::class, 'mentor_follower');
}
Arthur'); DROP TABLE Users;--
Arthur'); DROP TABLE Users;--
как с помощью модных save/attach/create зафоловить ментора?
Arthur'); DROP TABLE Users;--
$mentor->followers()->save($user);
Dmitry
Dmitry
getMentorAttribute не надо
Dmitry
Arthur'); DROP TABLE Users;--
разные
Vladimir
тогда и pivot в принципе не нужен
Dmitry
разные
связь Пользователь - Ментор - 1 ко многим
Dmitry
User hasOne Mentor
Dmitry
Mentor hasMany Users
Arthur'); DROP TABLE Users;--
ой, что-то да, я нагрузил больше чем нужно
Arthur'); DROP TABLE Users;--
🙈
Dmitry
точнее тут наверное User hasOne Mentor -> User belongsTo Mentor
Arthur'); DROP TABLE Users;--
да