пятница, 20 января 2017 г.

ember generate

Имеется приложение app/taskboard (если подходить с точки зрения Django, то taskboard можно назвать проектом). Я хочу создать статусы задач - taskstatus внутри taskboard, чтобы выглядело как app/taskboard/taskstatus.
Я использую --pod, прописал в .ember-cli
{
  ....
  "usePods": true
}


Создаю приложение taskstatus

- Структура приложения будет следующая:

/taskboard
    |--/taskstatus
    |       model.js 
    |
    |--/taskstatuses
    |        |--/index
    |        |        route.js 
    |        |        template.js
    |        |
    |        |--/edit
    |        |        route.js 
    |        |        template.js
    |        |
    |        |--/new
    |        |        route.js 
    |        |        template.js
    |        |
    |        |--/show
    |        |        route.js 
    |        |        template.js
    |        |
    |        route.js
    |        template.js
    |
    route.js
    template.js

- Для генерации ресурса (ember generate resource) нужно использовать множественное число для названия приложения - taskboard/taskstatuses.
Делаю генерацию ресурса:

$ ember g resource taskboard/taskstatuses

при этом создается:
  • taskboard/taskstatus - где размещается только модель - model.js . Обратите внимание, создавал во множественном числе, а модель создается в единственном! Именно такой путь - 'taskboard/taskstatus' - и надо будет указывать при обращении к хранилищу, например: this.store.findAll('taskboard/taskstatus')
  • taskboard/taskstatuses - здесь создались и будут создаваться все вложенные route.js и template.hbs

- Теперь создаю роуты для создания новых статусов, просмотра и редактирования - ember g route , при этом автоматически создаются и темлейты тоже:

$ ember g route taskboard/taskstatuses/index
$ ember g route taskboard/taskstatuses/new
$ ember g route taskboard/taskstatuses/show --path=:taskstatus_id
$ ember g route taskboard/taskstatuses/edit --path=:taskstatus_id/edit

При выполнении ember g route ключ --path= позволяется добавить автоматически путь в router.js, а значение - :taskstatus_id - это переменная, которая используется в params при вызове.

Вот так выглядит router.js после выполненных генераций:

  /* Taskboard app begin*/
  this.route('taskboard', function() {
    this.route('taskstatuses', function() {
      this.route('new');
      this.route('show', {
        path: ':taskstatus_id'
      });
      this.route('edit', {
        path: ':taskstatus_id/edit'
      });
    });

  });
  /* Taskboard app end*/



django-oscar tinymce 4 filebrowser

Задача: в дашборде django-oscar загружать изображения 1. Установка django-filebrowser-no-grappelli - Открываем проект, загружаем виртуа...