Ставим рубиновый типограф на Рельсы
25.11.2009В продолжение вчерашней темы, добавил простой способ типографить избранные поля в модели ActiveRecord.
Достаточно написать в нужной модели примерно следующее:
class Article < ActiveRecord::Base
typograf :title, :use_p => false, :use_br => false
typograf :content, :teaser
end
И тогда каждый раз перед сохранением (конкретнее, перед проверкой правильности полей) будет проходить типографирование этих полей, посредством Типографа студии Артемия Лебедева.
Поддерживается несколько возможных синтаксисов объявления моделей для типографирования:
- для одного конкретного поля:
typograf :content - можно указать параметры для типографирования этого поля:
typograf :content, :entity_type => AlsTypograf::NO_ENTITIES - для нескольких полей сразу (тоже с возможностью объявить параметрами типографирования, общие для всех объявленных полей):
typograf :skills, :achievements, :additional, :use_br => false, :use_p => true - для нескольких полей сразу (но с объявлением параметров для каждого конкретного поля):
typograf :foo => {:entity_type => AlsTypograf::HTML_ENTITIES}, :bar => {:use_p => true, :use_br => false}, :baz => {:max_nobr => 5}, :some_other_field_name => {}
Все эти варианты могут комбинироваться друг с другом внутри одной модели произвольное количество раз (но если параметры типографирования для одного и того же поля были указаны в вызовах несколько раз, будут применяться только последние).
Александр Семёнов