Size: a a a

Генератор непрочитанных сообщений

2020 October 28

ЕР

Евгений Ромашкан... in Генератор непрочитанных сообщений
Или, чтобы ручками не заполнять - sf serializer
источник

ЕР

Евгений Ромашкан... in Генератор непрочитанных сообщений
Но если там всего несколько полей, можно и ручками декодить/достать, и не нужно будет париться чтобы структура dto была такая же как у ответа
источник

С

Санжар in Генератор непрочитанных сообщений
Евгений Ромашкан
Но если там всего несколько полей, можно и ручками декодить/достать, и не нужно будет париться чтобы структура dto была такая же как у ответа
хз
там полей ну максимум 4
источник

С

Санжар in Генератор непрочитанных сообщений
Санжар
по теме дто вопрос.
Как лучше для дто задавать значения?
Например:
class JsonDataTransferObject extends DataTransferObject
{
   /** @var int $temperature */
   public $temperature;
}


Я создал DTO, оно будет содержать нужные мне поля из JSON моего.
Есть разные варианты инициализации значений для $temperature, самый топорный:
            $data = json_decode($response->getBody());
           $weather = new JsonDataTransferObject([
               'temperature' => $data->fact->temp
           ]);


Оно работает, но это хуитой кажется. Я по факту тоже самое делаю, также беру json, декодирую его чтобы обратиться к нужному полю и записываю его в DTO класс свой.
Куда это вынести или может иначе/более изящно сделать?
но то что здесь глаз режет
вынесу в конструктор наверн
источник

С

Санжар in Генератор непрочитанных сообщений
Евгений Ромашкан
Ну массивом только не надо, просто аргументами через конструктор
но ведь все равно придется доставать из $data = json_decode($response->getBody());, чтобы потом в конструктор передавать в духе $data->fact->temp / $data->fact->region
Или это норм относительно?
источник

AK

Alexander Kladov in Генератор непрочитанных сообщений
не нужно
источник

AK

Alexander Kladov in Генератор непрочитанных сообщений
Санжар
но ведь все равно придется доставать из $data = json_decode($response->getBody());, чтобы потом в конструктор передавать в духе $data->fact->temp / $data->fact->region
Или это норм относительно?
делаешь именованный конструктор, типа createFeomRequest
источник

С

Санжар in Генератор непрочитанных сообщений
Alexander Kladov
делаешь именованный конструктор, типа createFeomRequest
this?
    public static function fromRequest(Request $request): self
   {
       return new self([
           'title' => $request->input('title'),
           'body' => $request->input('body'),
           'author' => Author::find($request->input('author_id')),
       ]);
   }
источник

AK

Alexander Kladov in Генератор непрочитанных сообщений
тип того
источник

С

Санжар in Генератор непрочитанных сообщений
окс, щас доделаю и потом httpinterface
источник

С

Санжар in Генератор непрочитанных сообщений
сук на доту отвлекся в процессе)
источник

ЕР

Евгений Ромашкан... in Генератор непрочитанных сообщений
Санжар
но ведь все равно придется доставать из $data = json_decode($response->getBody());, чтобы потом в конструктор передавать в духе $data->fact->temp / $data->fact->region
Или это норм относительно?
Уже лучше
источник

ЕР

Евгений Ромашкан... in Генератор непрочитанных сообщений
Ща приду домой покажу какой у меня костылик есть
источник

С

Санжар in Генератор непрочитанных сообщений
отлично!
источник

С

Санжар in Генератор непрочитанных сообщений
буду чаще такое пилить теперь
источник

AK

Alexander Kladov in Генератор непрочитанных сообщений
чтобы в чатике обосрали? ;D
источник

С

Санжар in Генератор непрочитанных сообщений
Alexander Kladov
чтобы в чатике обосрали? ;D
ну почему
источник

С

Санжар in Генератор непрочитанных сообщений
критики жеж конструктивная
источник

AK

Alexander Kladov in Генератор непрочитанных сообщений
конструктивная
источник

С

Санжар in Генератор непрочитанных сообщений
я php-cs-fixer поставил прошелся
dto щас докручу
источник