Django Connect¶
Возвращает путь до файла
cookie.Параметры: studio ( edit_db.studio) – Экземпляр объетка студии или любого из его потомков.Результат: Путь до файла cookie.Тип результата: path
-
django_connect._get_user_data_path(studio)¶ Параметры: studio ( edit_db.studio) – Экземпляр объетка студии или любого из его потомков.
-
django_connect._input_data_converter(type_dict, data)¶ Преобразует данные полученные от
djangoсогласно типу изtype_dict.Преобразует:
- дату время из
iso. - строки в
json.dumps(если тип данных вtype_dict=json). - hex в
uuid(для id).
Параметры: - type_dict (dict) – Словарь типа данных данного объекта в Линейке (например
edit_db.studio.workroom_keys). - data (dict) – Словарь объекта полученного от
django.
Результат: Словарь объекта с преобразованными данными.
Тип результата: dict
- дату время из
-
django_connect._make_sess(lnk_object)¶ Создаёт сессию с куком сессии авторизованного пользователя. Чтение файла
cookie.Параметры: lnk_object ( edit_db.studio) – Объект студии, или любого из его потомков.Результат: Сессия Тип результата: requests.Session
-
django_connect._output_data_converter(type_dict, inst, from_dict=False)¶ Преобразует данные для отправки в
django.Преобразует:
- дату время в
iso. - Итерируемые объекты в строки (если тип данных в
type_dict=json). uuidв hex (для id).- добавляет
studio_name.
Параметры: - type_dict (dict) – Словарь типа данных данного объекта в Линейке (например
edit_db.studio.workroom_keys). - inst (объект линейки, dict) – Объект линейки, преобразуемый в словарь для передачи в линейку или уже словарь (если
from_dict= True). - from_dict (bool) – Если False - то
instэто объект линейки, если True - то словарь.
Результат: Словарь объекта с преобразованными данными в строковом представлении.
Тип результата: str
- дату время в
Параметры: studio ( edit_db.studio) – Экземпляр объетка студии или любого из его потомков.
Параметры: - studio (
edit_db.studio) – Экземпляр объетка студии или любого из его потомков. - cookie (dict) – словарь кука
- studio (
-
django_connect._write_user_data(studio, user_data)¶ Параметры: - studio (
edit_db.studio) – Экземпляр объетка студии или любого из его потомков. - user_data (dict, str) – Словарь данных пользователя.
- studio (
-
django_connect.get_user_data(artist)¶ Чтение словаря данных залогиненного пользователя из локального файла.
Параметры: artist ( edit_db.artist) – Экземпляр объеткаedit_db.artist.
-
django_connect.is_member(studio, username)¶ Проверка является ли данный юзер, в составе данной студии. Для случая смены студии или перелогинивания пользователя.
Внимание
Пустая процедура. Принадлежность к студии проверяется декоратором
permissions.is_studio_memberРезультат: (True, „Ok!“) или (False, commit) Тип результата: tuple
-
django_connect.login(studio, username, password)¶ Логин, запись файлов
edit_db.studio.COOKIE_NAMEиedit_db.studio.USER_DATA_FILE_NAME.Параметры: - studio (
edit_db.studio) – Экземпляр объеткаedit_db.studioили любого из его потомков. - username (str) –
…
- password (str) –
…
Результат: (True, {User.__dict__}) или (False, comment)
Тип результата: tuple
- studio (
-
django_connect.studio_create(studio, studio_name, studio_label)¶ Создание студии.
- Создание объекта Studio.
- Создание группы (Group) с именем
<studio_name>_head. - Создание для группы
permissionsрасширенных прав:'add','change','delete','view'. - Добавление текущего пользователя в группу и в студию.
Параметры: - studio_name (str) – Имя студии.
- studio_label (str) – Лейбл студии.
Результат: (True, {studio_dict}) или (False, comment).
Тип результата: tuple
-
django_connect.studio_get_groups(studio)¶ Получение списка групп (уровни) студии.
Примечание
params[„studio_name“] передаётся и для
permission_requiredи для чтения списка групп.Параметры: studio ( edit_db.studio) – Экземпляр читаемого объеткаedit_db.studio.Результат: (True, [список имён групп]) или (False, comment) Тип результата: tuple
-
django_connect.studio_get_list(studio)¶ Параметры: studio ( edit_db.studio) – Экземпляр объеткаedit_db.studioили любого из его потомков.Результат: (True, [список словарей]) или (False, comment) Тип результата: tuple
-
django_connect.studio_member_edit(artist, new_data)¶ Редактирование праметров модели StudioMemder, и смена группы (передаётся как
new_data['level']).Параметры: - artist (
edit_db.artist) – Экземпляр классаedit_db.artist. - new_data (dict) – Словарь данных на замену.
Результат: (True, „ok“) или (False, comment)
Тип результата: tuple
- artist (
-
django_connect.test_exists_object(studio, model, field, value, translit=True)¶ Проверка наличия модели со значением определённого параметра.
Примечание
Выполняется запрос
count={model}.objects.filter({field}="{value}").count()Параметры: - studio (
edit_db.studio) – Экземпляр объеткаedit_db.studioили любого из его потомков. - model (str) – Название django модели, нпример
User. - field (str) – Название поля модели, например
username. - value (str) – Значение данного поля. Для данного значения может быть сделана транслитерация.
- translit (bool, optional) – Если True - то будет произведена транслитерация
value.
Результат: (True, comment) если совпадений нет, или (False, comment) если совпадение есть.
Тип результата: tuple
- studio (
-
django_connect.user_get(artist, username, write_data=False)¶ Чтение данных артиста для текущей студии.
Внимание
Глюченная, требует переработки если понадобиться (оставить только GET).
Параметры: - artist (
edit_db.artist) – Экземпляр объеткаedit_db.artist. - username (str) –
usernameчитаемого артиста. - write_data (bool, optional) – Если True то данные артиста будут записаны в файл
edit_db.studio.USER_DATA_FILE_NAME, как при выполенииdjango_connect.login().
Результат: (True, {User.__dict__}) или (False, comment)
Тип результата: tuple
- artist (
-
django_connect.user_read_artists(studio, keys)¶ Возвращает список словарей `артистов удовлетворяющих **keys.
Параметры: - studio (
edit_db.studio) – Экземпляр объеткаedit_db.studioили любого из его потомков. - keys (dict) – Словарь условий для фильтра по параметрам
edit_db.studio.artists_keys.
Результат: (True, [{User.__dict__}, …]) или (False, comment)
Тип результата: tuple
- studio (
-
django_connect.user_registration(studio, username, email, password, login=False)¶ Создание облачных пользователей.
Параметры: - studio (
edit_db.studio) – Экземпляр объеткаedit_db.studioили любого из его потомков. - username (str) –
…
- email (str) –
…
- password (str) –
…
- login (bool, optional) – Если True - то будут записаны файлы
edit_db.studio.COOKIE_NAMEиedit_db.studio.USER_DATA_FILE_NAME.
Результат: (True, {User.__dict__}) или (False, comment)
Тип результата: tuple
- studio (
-
django_connect.workroom_add(workroom, wr_name, wr_type)¶ Параметры: - workroom (
edit_db.workroom) – Экземпляр объеткаedit_db.workroom. - wr_name (str) – Имя создаваемого объекта.
- wr_type (list) – Список типов для создаваемого отдела.
Результат: (True, {Словарь созданного отдела}) или (False, comment)
Тип результата: tuple
- workroom (
-
django_connect.workroom_edit_artists(workroom, artists, action)¶ Удаление из отдела или добавление в отдел списка артистов.
Параметры: - workroom (
edit_db.workroom) – Объект изменяемого отдела `артисты. - artists (list) – Список удаляемых или добавляемых артистов (объекты :obj:`edit_db.artist).
- action (str) – Совершаемое действие
'remove'или'add'.
Результат: (True, „ok!“) или (False, comment)
Тип результата: tuple
- workroom (
-
django_connect.workroom_edit_type(workroom, new_type)¶ Параметры: - workroom (
edit_db.workroom) – Экземпляр изменяемого объеткаedit_db.workroom. - new_type (list) – Список новых типов задач для отдела.
Результат: (True, {словарь отдела}) или (False, comment)
Тип результата: tuple
- workroom (
-
django_connect.workroom_get_artists(workroom)¶ Получение списка артистов отдела.
Примечание
params[„studio_name“] передаётся для
permission_required.Параметры: workroom ( edit_db.workroom) – Экземпляр читаемого объеткаedit_db.workroom.Результат: (True, [список словарей артистов]) или (False, comment) Тип результата: tuple
-
django_connect.workroom_get_list(studio)¶ Параметры: studio ( edit_db.studio) – Экземпляр объеткаedit_db.studioили любого из его потомков.Результат: (True, [список словарей]) или (False, comment) Тип результата: tuple
-
django_connect.workroom_rename(workroom, new_name)¶ Параметры: - workroom (
edit_db.workroom) – Экземпляр изменяемого объеткаedit_db.workroom. - new_name (str) – Новое имя отдела.
Результат: (True, {словарь отдела}) или (False, comment)
Тип результата: tuple
- workroom (