лишних запросов к API?
                  
                  
                  Ситуация такая - есть контроллеры partners/create и partners/partner, обоим для работы нужно запросить у бекенда список моделей. Код примерно такой
                  
                  
                  
                  
                  
                  // controllers/partners/create.js
                  
                  
                  export default class PartnersCreateController extends Controller {
                  
                  
                     units = this.store.findAll('unit'); 
                  
                  
                  }
                  
                  
                  
                  
                  
                  // controllers/partners/partner.js
                  
                  
                  export default class PartnersPartnerController extends Controller {
                  
                  
                     units = this.store.findAll('unit'); 
                  
                  
                  }
                  
                  
                  
                  
                  
                  Хочу поднять запрос в index controller controllers/partners/index.js а из partner и create обращаться к index. На вскидку нашёл 3 способа, но какой из них лучше выбрать:
                  
                  
                  
                  
                  
                  1) https://api.emberjs.com/ember/4.1/classes/Route/methods/controllerFor?anchor=controllerFor
                  
                  
                  2) https://api.emberjs.com/ember/4.1/functions/@ember%2Fcontroller/inject
                  
                  
                  3) getOwner(this).lookup('controller:partners.index')
                  
                  
                
Контроллер parents/index не будет создан если переход будет на parents/create. Не знаю на самом деле при инджекте создаст ли эмбер экземпляр контроллера parents/index. Но мне кажется что не создаст. Вообще инджектить котроллеры не очень хорошая идея Лучше вынести в сервис. Или использовать peekAll вместо findAll внутри контроллеров а данные подгружать в роуте
модель там Partner, в create роуте return this.store.createRecord('partner'); в роуте partner вообще кода в хуке model нет, используется соглашение
Имхо если делать в model хуках, то это проще
Обсуждают сегодня