Форум сайта python.su
Разница есть - потому как люди будут использовать эту GroupsAndUsers SDK, то есть как будут обращаться к полям модели. Все приведённые примеры выше - это примеры использования:
from groups_and_users_sdk import Client client = Client(group_url, api_token) user = client.get_user(user_id) user.first_name = 'Sarah' user.FloorNumber = 5 result = client.update_user(user_id, user) print(result)
Отредактировано Master_Sergius (Май 12, 2021 16:45:42)
Офлайн
> Нет, не стыдно Потому что, как я уже описал выше - есть исключения….
Я просто не понимаю такую зацикленность на том что твой “лид” называет “pythonic-way”. По моему это как то странно.
> люди будут использовать эту GroupsAndUsers SDK, то есть как будут обращаться к полям модели.
А если админ с пьяна у себя поменяет FloorNumber на FNumber, тогда что? Люди начнут срочно тонны кода рефакторить?
> Вот реально, разве не выглядит это все как костыль на костыле?
Конечно.
Отредактировано Rodegast (Май 12, 2021 19:03:35)
Офлайн
Master_Sergius
Есть некий сервис, назовём его GroupsAndUsers
Master_SergiusИ вот между ними должно быть недостающее звено. Сервис GroupsAndUsers просто не доделан. А то, что не доделано, никуда не делось и осталось так же нужно, как и было. Поэтому это придётся теперь доделывать тебе. Обычно недоделанные моменты проще дописывать снаружи, а не внутри недоделки. Поэтому пиши переводчик тупых ответов от сервиса в нормальные и нормальных ответов сервису в тупые. База данных должна быть защищена от любой дурости, вводимой пользователями. И это твоя ответственность.
И есть вот python sdk, назовём его GroupsAndUsers SDK
Офлайн
RodegastФокус в том, что в каждой группе есть свой админ, и эти группы могут иметь разные кастомные аттрибуты (базовые аттрибуты конечно же все одинаковые).
> если админ с пьяна у себя поменяет FloorNumber на FNumber, тогда что? Люди начнут срочно тонны кода рефакторить?
py.user.nextЛадно, “я все сделаю - я же эксперт” (с) 7 красных линий
И это твоя ответственность.
Офлайн
Master_SergiusНу тут такое, допустим я не погромист, в академиях не кончал и вот я создал кастомный атрибут MyFucked_CustomAttr. А теперь я хочу его использовать. Я делаю user.MyFucked_CustomAttr и получаю attribute error. WTF? каким местом я должен догадаться что вы его превратили в my_fucked__custom_attr потому что вам так показалось более “pythonic-way”? А если я создам два кастомных поля custom_attr и customAttr, что станет?
Разница есть - потому как люди будут использовать эту GroupsAndUsers SDK, то есть как будут обращаться к полям модели. Все приведённые примеры выше - это примеры использования:
.... user.first_name = 'Sarah' user.custom.FloorNumber = 5 user.custom.TAX = 0.2 ...
[code python][/code]
Отредактировано PEHDOM (Май 12, 2021 20:37:22)
Офлайн
Опишу как мы действуем в аналогичной ситуации.
Есть относительно жесткий базовый API который протащен в программный код. Для него есть в программном коде отображение Внешние имена в программные. Изменения согласовываются пользователями и программистами. Доступ сделан в виде:
proxy_obj.some_var=234 x = proxy_obj.some_var
proxy_obj["someVar"]=234 x = proxy_obj["someVar"]
Отредактировано doza_and (Май 12, 2021 20:51:20)
Офлайн
Master_Sergiusверное решение нео )
7 красных линий
Офлайн