Alex
ну не обязательно, но нужен пакет вернего уровня (обычно по названию проекта)
Евгений
я не знаю откуда алембик дёргает
А откуда ты его сейчас дергаешь когда получаешь ошибку?
Alex
который импортируемый, нормальные люди решают через setup.py и install develop \ pip install -e .
Alex
и не будет этих диких проблем
Евгений
А откуда ты его сейчас дергаешь когда получаешь ошибку?
Из pycharm? Там в настройках запуска путь выполнения указан.
Иван
Пытаюсь заимпортить logger, который определен в файле __init__.py Почему-то from module import logger # importerror from . import logger # importerror import module.logger module.logger.info('something') -> все норм Как это бл**ь рабртает?
Евгений
в корне проекта пишу alembic <arg>
добавь __init__.py в release. проблема решена?
Иван
Горю с питоновских импортов уже год
Alex
он там есть
что в alembic.ini?
Alex
добавь __init__.py в release. проблема решена?
нет, нужно еще тогда чтобы родительский каталог был в sys.path.
Андрей
ух бля ребят проблема решена я случайно проект удалил, а он не под гитом был
Андрей
опишите в двух словах, как правильно выстроить архитектуру
Андрей
(структуру, вернее)
Alex
опишите в двух словах, как правильно выстроить архитектуру
packagename/ __init__.py app/ migrations/ anything_you_want.py setup.py alembic.ini
Андрей
и так несколько модулей?
Андрей
packagename/ __init__.py your code pack2/ __init__.py setup.py
Андрей
верно?
Alex
верно?
ну чаще всего проекты упаковывают в один пакет верхнего уровня
Alex
но вообще да их может быть больше одного
Alex
только это не значит что ты сможешь из одного в другой делать относительные импорты
Евгений
нет, нужно еще тогда чтобы родительский каталог был в sys.path.
ну в теории достаточно из release тогда alembic запустить
Андрей
окей где тогда папку, создаваемую алембиком, держать, чтобы можно было модельки/метадату дерагть?
Alex
ну в теории достаточно из release тогда alembic запустить
нет, т.к. у него app и migrations два независимых пакета и на init.py в release пофиг, т.к. alembic уж точно не сунет родительский каталог в sys.path
Alex
соответственно с точки зрения python - app и migrations это два разных пакета верхнего уровня и относительные импорты между ними невозможны.
Андрей
Андрей
и app - пакет?
Alex
app/migrations?
pkgname/migrations pkgname/app/migrations whatever
Андрей
спасибо
Олег
ребзи, не понимаю в чем ошибка def TrySetMemberCommon(self, fieldName, value): column = self.parentCollection.Колонки().Найти(fieldName) if column is None: return False # self.values[column] = value self.values[value] = column def __setitem__(self, key, value): try: self.TrySetMemberCommon(key, value) except TypeError: value = value.Value TypeError: TryGetMemberCommon() takes 2 positional arguments but 3 were given
Олег
key and value == str
Олег
глаз не видит косяка, может кто подскажет
Олег
koder
Скинь код всего класса, только в виде куска кода
koder
Положи куда-нить на пастбин типа
koder
Там где-то косяк, кажется, с тем где этот метод определен
Anonymous
TryGetMemberCommon() takes 2 positional arguments but 3 were given
Олег
Скинь код всего класса, только в виде куска кода
я выкладываю в гитлаб, могу ссыль кинуть?
koder
Да
Олег
Да
https://gitlab.com/oleg73q/broom-python/blob/master/Types/%D0%A1%D1%82%D1%80%D0%BE%D0%BA%D0%B0%D0%94%D0%B2%D1%83%D0%BC%D0%B5%D1%80%D0%BD%D0%BE%D0%B9%D0%9A%D0%BE%D0%BB%D0%BB%D0%B5%D0%BA%D1%86%D0%B8%D0%B8%D0%97%D0%BD%D0%B0%D1%87%D0%B5%D0%BD%D0%B8%D0%B9.py
koder
А где там код который падает?
Олег
смотри метод __setitem__(self, key, value)
Олег
ребзи, не понимаю в чем ошибка def TrySetMemberCommon(self, fieldName, value): column = self.parentCollection.Колонки().Найти(fieldName) if column is None: return False # self.values[column] = value self.values[value] = column def __setitem__(self, key, value): try: self.TrySetMemberCommon(key, value) except TypeError: value = value.Value TypeError: TryGetMemberCommon() takes 2 positional arguments but 3 were given
Futorio
Futorio
»self.parentCollection.Колонки().Найти(fieldName)
Олег
self.TryGetMemberCommon(key, value) -> self.TryGetMemberCommon(key)
а почему я value должен убрать?
Андрей
self.TryGetMemberCommon(key, value) ->self.TrySetMemberCommon(key, value)
Олег
знаю что прокатит, но мне нужно что б и value прошло
Андрей
cмб так все таки?
Олег
self.TryGetMemberCommon(key, value) ->self.TrySetMemberCommon(key, value)
так у меня акже, и валиться с ошибкой
Евгений
Ну кажется у тебя TryGetMemberCommon только один параметр принмает
Олег
Ну кажется у тебя TryGetMemberCommon только один параметр принмает
неа, он у меня определен как TrySetMemberCommon(self, fieldName, value):
Alex
знаю что прокатит, но мне нужно что б и value прошло
тут несколько человек уже как бы намекают что ты Get и Set перепутал, нет?
Евгений
GET а не Set
Олег
ребзи, не понимаю в чем ошибка def TrySetMemberCommon(self, fieldName, value): column = self.parentCollection.Колонки().Найти(fieldName) if column is None: return False # self.values[column] = value self.values[value] = column def __setitem__(self, key, value): try: self.TrySetMemberCommon(key, value) except TypeError: value = value.Value TypeError: TryGetMemberCommon() takes 2 positional arguments but 3 were given
Олег
оу щет
Alex
и вообще кирилица в исходниках, код не по PEP8
Alex
сжечь
Евгений
автора?
Олег
GET а не Set
спасибо, просто уже глаз замылился
uniq
Какие библиотеки посоветуете для работы с роутером? Нужно написать скрипт, который проверяет обновления прошивки роутера
uniq
requests
а какие там функции относятся к прошивке роутера?
uniq
а что за протокол?
пока нет информации
uniq
просто идея проверять обновления прошивки
Дмитрий
http
ну мало ли, вдруг там по smnp надо. или таких не бывает?