Полнотекстовый мульти-модельный поиск в Rails c помощью ElasticSearchКопылов Владислав

alt text

В этой статья я хочу поделится опытом реализации поискового скрипта. Передо мной стояла задача реализовать не просто поисковик по нескольким текстовым полям, а сделать поиск по нескольким моделям с учетом морфологии языка и префиксного анализа. Старшие товарищи порекомендовали использовать для этой задачи ElasticSearch. Такая реализации не будет нагружать основное приложение, а сам ElasticSearch имеет хороший API на все возможные случаи использования и легок в настройке.

Ссылка на оригинальную статью

Meta_Information простой гем для парсинга meta теговКопылов Владислав

RubyGems

Простенький гем, основанный на nokogiri, который по url парсит meta теги и собирает их в json.

Пример использования:

require 'pp'
meta = MetaInformation.get_meta('https://www.awesome_site.com/awesome_page')
pp meta
###
#{:succes=>"true",
# :error=>"",
# :all_meta=>
#  [{:type=>"name",
#    :name=>"viewport",
#    :content=>"width=device-width, initial-scale=1.0"},
#   {:type=>"name", :name=>"description", :content=>"some description"},
#   {:type=>"name", :name=>"title", :content=>"i am title"},
#   {:type=>"name", :name=>"og:title", :content=>"some content"},
#   {:type=>"name", :name=>"og:description", :content=>"some description"},
#   {:type=>"name",
#    :name=>"og:image",
#    :content=>     "https://www.awesome_site.com/assets/awesome_picture.jpg"}]}
###
3-4 июня в Киеве состоится RubyC-2017Alex Soulim

RubyC — это крупнейшая украинская конференция, посвященная Ruby, Ruby on Rails и сопутствующим технологиям. Организатор, компания Svitla Systems, ежегодно собирает в Киеве около 400 участников из Украины, Европы и стран СНГ. В 2017 году конференция состоится в пятый раз, 3-4 июня в Концерт Холле "BelEtage".

Как и прежде RubyC приглашает 7 спикеров из Европы и 6 из Украины, оставив первую лекцию второго дня для открытого общения и обсуждения последних новостей. Отдельно стоит отметить разнообразие экспертов, которые выступят в этом году:

RubyC постоянно ищет таланты среди украинских разработчиков. Всех желающих выступить на конференции в этом году организаторы приглашают подать заявку. Дедлайн – 31 марта, финалисты будут определены путем внутреннего голосования и объявлены 7 апреля. Просим учесть, что все доклады на RubyC презентуются только на английском языке.

RubyC-2017 выражает огромную благодарность Золотому СпонсоруMLSDEV, Ruby Спонсорам: Global Logic и TopTal, а также Медиа Партнерам: Soft Serve, Ruby No Name, Ruby Garage, Lohika, Daxx, Innocode, Altoros, Lviv IT School, Ruby Flow and Ruby Jobs, IT Education Academy и Belarus Ruby User Group, RubyMEditation, Meetup.com, Айти-Событие, благодаря которым конференция продолжает расти и развиваться.

Впереди несколько месяцев подготовки, знакомство со спикерами и их темами, много сюрпризов, поэтому следите за новостями на Twitter и Facebook.

Тем временем билеты Early Birds уже в продаже!

До встречи на RubyC-2017!

TranslateEnum - гем для перевода ActiveRecord::EnumAlexander

GitHub

Простой гем, который поможет организовать переводы для enum атрибутов ваших ActiveRecord моделей

class Post < ActiveRecord::Base
  enum status: { published: 0, archive: 1 }
  translate_enum :status
end

Использование:

Post.translated_status(:published) #=> "Was published"
Post.translated_statuses => [["Was published", :published, 0], ["Was achieved", :archive, 1]]
@post = Post.new(status: :published)
@post.translated_status #=> "Was published"

Форма:

f.select :status, options_for_select(f.object.translated_statuses.map { |translation, k, _v| [translation, k] })
Deploy.rb. Запусти Rails 5 на Production сервере за 30 минутIlya N. Zykin

Большое видео о настройке и деплое Rails 5 приложения. Ребята, го пробовать Rails 5, Пуму и WebSockets!

30 минут и вы на рельсах на реальном сервере!

✅ ✅ ✅   https://goo.gl/ulJnPL ✅ ✅ ✅

alt text

Deploy.rb Демонстрационно образовательный проект, который поможет вам быстро запустить Rails 5 приложение в Production режиме на настоящем сервере. В этой видео-презентации подробно разобран способ конфигурирования Rails приложения для обеспечения удобной поддержки и развития проекта. Для комфортного конфигурирования и дальнейшего деплоя.

Страница проекта: https://github.com/DeployRB

Страница описания: https://deployrb.github.io

Онлайн-интенсив по Ruby on Rails. Старт 6 марта. Промо-код внутри.

Онлайн-школа Thinknetica запускает новый набор на интенсив "Профессиональная разработка на Ruby on Rails". Старт уже 6-го марта 2017 г.

Теперь у нас 2 программы:

  • Полная программа (24 недели). Для тех, кто только хочет изучить Ruby и RoR. Здесь проходим все с самых основ и до продвинутых тем. А самое крутое - это гарантия трудоустройства после окончания.
  • Продвинутая программа (12 недель). Для тех, кто уже знает основы Ruby on Rails и хочет прокачать навыки, чтобы стать профессионалом.

Для читателей RubyFlow действует скидка по промо-коду RUBYFLOW (указывается при оплате).

Интенсив оплачивается в рассрочку на 2 или 3 месяца, в зависимости от программы.

Подробности и регистрация здесь

Новый сайт с документацией для KMSPitOn

Наконец-то я сделал "более лучший" сайт для системы управления сайтом KMS. На сайте можно ознакомиться с основными фичами и посмотреть документацию. Добро пожаловать на http://getkms.com

Отлавливайте исключения с помощью rescue_from в любом классе Rails приложенияAndrey Koleshko

Как известно, Rails предоставляет достаточно удобный функционал по отлову ошибок в контроллерах с помощью rescue_from метода. Однако, что если нужно определить такой же функционал в других классах, например, в сервисах и т.п.? Реализовывать все с нуля? Это отличная идея, однако, можно намного проще. Об этом читайте в этой статье.

Пишем Telegram бота на Ruby для уведомлений в каналеAnthony Ryabov

Заикнулся в присутствии нового коллеги о своем блоге, первый его вопрос был “что за блог?”, а второй “а телеграм бот у тебя есть?”. Поймал себя на мысли неужели я стал ретроградом. Когда начался хайп вокруг влогов и youtube каналов я остался верен теплому ламповому формату текстовых статей, так и сейчас, считаю что нет необходимости иметь свой Telegram канал, но задача меня заинтересовала.

Читать полностью

RubyMine 2016.3 доступен для обновленияArtem Sarkisov

Привет от команды JetBrains!

Мы рады представить RubyMine 2016.3, финальное обновление нашей IDE для Ruby и Rails в этом году.

Данное обновление порадует вас улучшенной поддержкой Puppet, более удобным управлением gem-ами, и возможностью отладки локальных Ruby/Rails процессов. Мы также добавили возможности из платформы IntelliJ Platform, в том числе значительные изменения в работе с VCS и усовершенствованные инструменты для JS и баз данных.

Более полное описание изменений и возможность скачать новую версию доступны на нашей странице "What's new". Качайте и пользуйтесь бесплатно целый месяц!