ZendFramework Что там по Гайдам ZF3?

  • Автор темы Автор темы Vano
  • Дата начала Дата начала

Vano

Новичок
Начал изучать ZF3, а гайд, я так понимаю, пока только для ZF2, + мигрирование на ZF3 + гайды компонентов. Помогите составить роадмап для изучения. (если знаешь количество нужных знаний - учишься легче).

Допустим из паттернов ООП я знаю только: синглтон, фактори метод, фасад;
более менее понимаю о чем речь: data mapper, identity object.
уверен, для того чтобы запомнить как биндить и куда пихать, нужно знать Dependency injection, di Container.

Учить ZF expressive, (паралелньо паттерны DI, фасады, фактори, и всё что связано с БД и моделями, мидлверы, "трубные линии"))), потом тот оставшийся от ZF2 гайд, потом миграцию, потом новых компонентов? Или я чето пропустил.
 
И забегая на перед (хотя вопрос не по зенду, но думаю зендеры точно знают что ответить):
Если я по всем канонам репозитория создам новую запись
PHP:
public function saveAlbum(Album $album)
...
$this->tableGateway->insert($data);
return;
...
, то в каком месте я должен взять record ID, чтобы перенаправить создателя на стринцу редактирования?
 
в каком месте я должен взять record ID, чтобы перенаправить создателя на стринцу редактирования?
Бери в самом начале, не ошибешься:
PHP:
$id = $identityGenerator->next();
$album = new Album($id);
$repository->save($album);
// ...
 
Оки, а next() это как он берет некст? Со information schema (если мускул) ? Или может ласт рекорд айди + 1? И не будет ли наложений айдишников, если очень много запросов одновременно? Если будет то о чем еще нужно знать?
 
Оки, а next() это как он берет некст? Со information schema (если мускул) ? Или может ласт рекорд айди + 1? И не будет ли наложений айдишников, если очень много запросов одновременно? Если будет то о чем еще нужно знать?
Или тут шанс на столько мал, что ним можна принебречь(то-есть, если что-то пойдет не так, выпустить ошибку, мол повторите попытку еще раз).
 
Ты пишешь сообщения слишком быстро, не успев обдумать. Пиши меньше.
 
хооооороооооошоооооо яаааа бууууудуууу мееееедлееееенннеееееее еееееееее))
 
Ну всё же(я перечитал), я не нашел ответ на свой вопрос про метод некст().
 
Оки, а next() это как он берет некст?
Он имел в виду сделать реализацию генератора id. К примеру, на MySQL это можно сделать так: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html#function_last-insert-id (ищи по слову «sequence»).

uuid? а нельзя без?
Это может быть и UUID, но необязательно.
 
Он имел в виду сделать реализацию генератора id. К примеру, на MySQL это можно сделать так: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html#function_last-insert-id (ищи по слову «sequence»).


Это может быть и UUID, но необязательно.
Спасибо. Но я это и понял)) Дело в том что не знаю каким методом это сделать, чтоб поменьше было провалов.
 
Всем пофиг на провалы (если ты под этим словом подразумеваешь «дырки» в последовательности id-шников).
 
Та даже не в последовательности. а провал записи в БД изза Unique
Если ты про это, то ты невнимательно прочитал то, что написано по ссылке. Там предлагается вполне себе потокобезопасный вариант получения id-шника. Параллельный поток, вызвав ->next(), получит уже другой id.

Я ещё раз тебе рекомендую внимательнее читать и поменьше писать.
 
Спасибо. Щас прочитаю, но не надо еще раз)) Я в первый раз всё понял.
 
Если ты про это, то ты невнимательно прочитал то, что написано по ссылке. Там предлагается вполне себе потокобезопасный вариант получения id-шника. Параллельный поток, вызвав ->next(), получит уже другой id.

Я ещё раз тебе рекомендую внимательнее читать и поменьше писать.
Гениально просто) Думаю я бы и сам дошел до такого варианта, если б подумал над этим
 
Сверху