Сообщений в Pyramid

REST API для Pyramid при помощи Cornice и SACRUD

Mozilla использует в своих проектах Pyramid и у них есть отличный модуль для создания REST API https://cornice.readthedocs.org/en/latest/

Читать ...


Обновление sacrud. Версия 0.1.2

В этой версии делался упор на кастомизацию интерфейса.

Читать ...


Своя панель в pyramid_debugtoolbar

Я создал небольшой пример, как это сделать на примере sadisplay. sadisplay - это модуль который отображает модели SQLAlchemy в виде UML диаграммы.

Читать ...


миграции в Pyramid

Пример миграций в пирамиде:

Читать ...


Демо репозитарий Pyramid + sacrud

pyramid_sacrud_example - пример работы sacrud в Pyramid вместе с PostgreSQL.

Читать ...


Запись в БД через sacrud используя SQLAlchemy session.

Для простых CRUD действий с БД, можно воспользоваться модулем action из sacrud. Это немного сократит код и добавит некоторой универсальности в ПО со сложной логикой.

Читать ...


Обновление sacrud и pyramid_ext

Новая версия sacrud 0.0.3. В ней поправлены некоторые баги, добавлены нескучные обои элементы дизайна в расширении для Pyramid и создан отдельный репозитарий с примерами работы разных типов полей (pyramid_sacrud_example). Pyramid_sacrud_example работает только с Postgres потому что включает в себя примеры полей специфичных именно для этой БД (таких как hstore).

Читать ...


CRUD интерфейс для SQLAlchemy и подключение к Pyramid

Запилил Yet another CRUD интерфейс для SQLAlchemy. По сути это аналог Django админки или FormAlchemy, но ОЧЕНЬ сильно упрощенный, ничего лишнего. Есть поддержка большинства полей + кастомные поля типа файл (для загрузки файлов, изображений) и GUID. Довольно просто подключить к Pyramid проекту и сразу начать работать по адресу http://localhost:6543/sacrud

Читать ...


Использование SQLAlchemy в дополнениях к Pyramid

У меня есть дополнение к pyramid которое я включаю почти в каждый проект при помощи includeme (include()). Приложение это дает мне простой CRUD интерфейс с Jinja шаблонами малой кровью. Что позволяет избавиться от монстра FormAlchemy. Естественно каждый проект имеет свое название поэтому пришлось применить немного магии что бы создать универсальный механизм получения DBSession в своем подключаемом дополнении.

Читать ...


Меняем заголовок ответа в Pyramid/Pylons

Обычно в заголовке находится что то типа:

Читать ...


CMS на python-pyramid

Мне иногда приходится писать сайты знакомым, друзьям, знакомым друзей, знакомым знакомых друзей... И почти всегда всем нужен простой сайт нахаляву визитка, но что бы можно было вносить изменения периодически. Идеально для этого наверно подходит CMS, но CMS слишком тяжелая и имеет зачастую слишком много ненужного. Поэтому я написал движок сайта-визитки с выпиленным ненужным.

Читать ...


Redactor-js WYSIWYG редактор и python

Redactor-js - это простой вайсвиг с возможностью загрузки изображений.

Читать ...


Перевод шаблонов Jinja в Pyramid

Основная документация как это делать здесь. Но как обычно есть нюансы.

Читать ...


CMS на Pyramid фреймворке

Poolyx CMS - малоизвестная система управления сайтом написанная на Python с применением Pyramid немецкими кодерами.

Читать ...


Структура Pyramid приложений как в Django

Одной из причин отказа развивать ветку Pylons стала его архитектура проекта. Все контроллеры хранятся в директории controllers, модели в models, шаблоны в templates. Это очень удобно когда у вас маленький проект, но если он разрастается до десятков и сотен сущностей, то становится крайне сложно скакать по этим папкам выискивая нужный файл, относящийся именно к этой сущности. В Django сделано по другому, в проекте хранятся приложения (application) - это такие маленькие подпрограммы которые отвечают за конкретный функционал проекта (например фотогалерея django-photologue или дерево сайта django-sitetree и прочее). Каждое такое приложение имеет свою папку и уже в ней хранятся контроллеры (views в данном случае) и модели (models). Т.е. вместо такой архитектуры Pylons:

Читать ...


pyramid_formalchemy

FormAlchemy это CRUD для SQLAlchemy. Для Pylons существовало расширение прямо в самом модуле в разделе ext. Для Pyramid создали отдельный пакет pyramid_formalchemy. Посмотрим как это работает:

Читать ...