Dobroserver — блог на Ruby on Rails

Посты #

У постов есть флаг «опубликован» и дата публикации. При этом если пост не опубликован, или дата публикации в будущем — он не отображается. А если пользователь использует прямую ссылку на такой пост, то его перенаправляет на главную страницу.

Изображения #

Большие автоматически ресайзятся, а загрузка и удаление проходит через ajax.

Вложения #

Остальные файлы.

Теги #

Создаются на странице редактирования поста. При этом если у поста нет описания, то автоматически добавляется тег μ.

Комментарии #

Комментарии добавляются через ajax, без перезагрузки страницы.

В качестве защиты от спама добавлено скрытое (display: none) поле spam и в валидациях максимальная длина для него 0. Смысл в том, что люди не увидят это поле, а боты заполняют все поля форм. Хотя несколько ботов уже прорвалось, буду думать дальше.

Перед сохранением комментария его текст (html) чистится по белому списку. IP логируются.

Страницы #

Практически полный аналог постов. За исключением того, что на страницах не отображается боковая колонка, и им не нужны теги, комментарии, описания.

Atom лента последних постов #

В ленте, как и на главной странице блога, отображаются описания, если они есть и полное содержимое, если их нет.

ЧПУ #

Слаг автоматически генерируюется из заголовка: /dobroserver-blog-na-ruby-on-rails.

При разбиении ресурса на страницы используется нормальный адрес вида /page-1.

Файлы хранятся по адресу вида: /uploads/posts/dobroserver-blog-na-ruby-on-rails/images, при этом при измении заголовка поста, старая директория переименовывается.

Уведомления на почту #

  • Форма «Обратная связь», с которой можно отправить мне сообщение.
  • Появление нового комментария.

space #

Сердце этого блога — кастомизированная разметка в духе markdown.

Для заголовков автоматически генерируются якоря.

GitHub #

Очень и очень сырая альфа — полигон для изучения Рельс и сопутствующего добра.

Комментарии

SkyLover

На гитхабе пустое вновь созданное приложение... Ссылка точно верна?

ksevelyar

Я сейчас его переписываю с нуля, с тестами, индексами, хешами в стиле Ruby 2 и всем остальным. Плюс недавно вышли четвёртые Рельсы.

А так как времени из-за работы / тренировок / мотошколы не так уж и много, то процесс затянулся (:

Добавить комментарий