-
Notifications
You must be signed in to change notification settings - Fork 1
Carcas deps
При определении контроллеров и модулей можно указывать списки зависимостей.
Пример списка зависимостей (в виде словаре):
{
'controllers' : ["layouts.admin"],
'modules' : ["admin.ui.List", "calendar"],
'go' : ["Cookie"],
'libs' : ["fancybox", "my-super-lib"]
}
Все поля необязательны.
controllers
и modules
, понятно, это списки требуемых контроллеров и модулей.
go
- список go-библиотек.
В примере, нам требуется go.Cookie
, видимо мы собрались работать с куками.
Библиотеки Class
и Ext
указывать не требуется, они должны быть загружены.
libs
- список сторонних библиотек. См. подключение сторонних библиотек.
Тоже самое но более компактно одним массивом:
["c:layouts.admin", "mo:admin.ui.List", "mo:calendar", "go:Cookie", "l:fancybox", "l:my-supre-lib"]
Префиксы, c=controllers
, mo=modules
, go=go
, l=libs
.
Если префикс не указан, то для списка зависимостей контроллера, считается, что это контроллер. Для модуля, соответственно, модуль.
Абсолютно тоже самое одной строкой:
"c:layouts.admin, mo:admin.ui.List, mo:calendar, go:Cookie, l:fancybox, l:my-supre-lib"
Модули могут требовать другие модули, go-модули и сторонние библиотеки.
Зависеть от контроллеров модули не должны.
Ибо это не правильно.
Вылетает исключение go.Carcas.Exceptions.ErrorDependence
.