Форум сайта python.su
Marta
Возможно, вы правы и упоминать понятие конструктора в рамках Python может быть не корректно. Однако __new__() же возвращает объект класса, а __init__() его инициализирует (настраивает) - вполне себе тот же __construct из того же PHP (да и в других языках нечто подобное). Методов есть много, вплоть до перегрузки операторов при их применение к данному классу.
Офлайн
4kpt_IVЯ понимаю, что Blueprint по сути добавит новые роуты в созданное Flask-приложение. И дефолтно фреймворк не поднимает вопрос об использовании БД (это уже решает программист сам или с помощью готовых расширений).
Считайте это просто способом упаковки роутов к вьюхам. Нет никакой логической связи между блупринтом и базами…
4kpt_IVПросто я пытаюсь построить все так, чтобы написать один раз какой-то функционал (пусть будут статьи), а далее просто в конфиге указывать где его подключить (например, на example.org/, example2.org/articles_1/, example2.org/articles_2/).
Ну и зачем два блупринта на один домен я так и не понял
4kpt_IVХорошо, давайте по шагам. Просто вопрос про модели вылился в обсуждение архитектуры приложения ИМХО. Правда я не могу насчитать три проблемы, вижу две: роутинг и модели. И с моей точки зрения пока все больше упирается в том, что я пока не до конца понимаю внутренности SQLAlchemy (есть peewee, но она уж через чур простая).
У меня возникает ощущение, что Вы пытаетесь решить три проблемы одним шагом. Это совершенно неверно. Такого решения нет.
4kpt_IVЕсли вы не против продолжать обсуждение, то мне хотелось бы услышать подробнее на счет этого (использовать паттерн DI - это интересный путь), ну и разобраться и убрать “кашу” (я не просто так пришла на форум сказать, что переопределила пару методов у Blueprint, накопировала python-пакеты с ними и все ОК. а мне интересно разобраться в своих ошибках и понять как сделать лучше и узнать больше ).
Хотя мог бы посоветовать тогда собирать свои модели под конкретный блупринт (через подмену Basе) и подсовывать их ему через DI, но у Вас и так в голове сейчас каша, поэтому откланиваюсь
4kpt_IVХорошо. Постараюсь выражаться, так сказать, более в Pythonic way.
Не возможно, а 100% прав. В качестве конструкторов выступают два специальных метода класса и понятия конструктора в питоне, как бы не было печально, все же нет. Ну а терминология других языков, в частности ПХП меня не интересует вовсе Потому как я не додумаюсь никогда в питоне называть методы класса “переменными-членами”…
Отредактировано Marta (Май 6, 2016 02:59:46)
Офлайн
Так а 4kpt Вам указал вполне нормальное решение - хранить в таблице идентификатор домена. Можно даже тупо хранить строку с именем домена.
Офлайн
aybПросто мне не хотелось бы хранить все яйца в одной корзине. Это логично с точки удобства бэкапа и логического разделения.
Так а 4kpt Вам указал вполне нормальное решение - хранить в таблице идентификатор домена.
Офлайн