Найти - Пользователи
Полная версия: Доступ к объекту модуля НЕ через точку.
Начало » Python для новичков » Доступ к объекту модуля НЕ через точку.
1
avega
Добрый день.
Делаю приложение на Flask + flask-mongoengine.
Существует модуль с описанием моделей объектов (models.py).
При написании роутера возник вопрос:
Как можно получить доступ к объекту из импортируемого модуля ‘models.py’ без точки?
Приведу небольшой пример:
 import models as mod
@app.main.route('/<p>')
def index(p):
    if p == 'Nomenklature':
        noms = mod.Nomenclature.objects
    elif p == 'NomenclatureType':
        noms = mod.NomenclatureType.objects
А хотельсь-бы что-то вроде такого:
 import models as mod
@app.main.route('/<p>')
def index(p):
    if p:
        noms = mod[p].objects
Может посоветуете как преобразовать структуру кода.
Заранее благодарен.
4kpt_IV
1. По фласку лучше писать в другую ветку.
2. По Вашему вопросу. Сомнительно, что нужно именно в виде получения по ключу

 import models as mod
@app.main.route('/<p>')
def index(p):
    if p:
        noms = getattr(mod, p).objects

P.S. По-свободе рекомендую почитать что-то по языку все таки, перед тем как садиться за flask. Быстрый вариант - М. Лутц: Изучаем Python. 3 издание.
avega
Спасибо большое.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB