Программирование на Ruby - Новости

Rails + Populator + Faker

Часто в процессе разработки сайта на Rails нужно быстро создать много данных, например для тестирования пажинатора.

Можно написать rake задачу, можно добавлять вручную. В любом случае тяжело гарантировать приближенность к реальности вводимых данных. Например, выдумывать 1000 электронных адресов, фамилий и т.д. это не шутка.

Чтобы сэкономить время рекомендую воспользоваться библиотекой populator.

Ставим:

gem install populator

Используем. Например, нам нужно добавить в базу 3000 записей о пользователях

  User.populate(3000) do |user|
    user.first_name = “Tony”
    user.last_name = “Stark”
  end

В целом неплохо. Но как, то не очень хорошо, что у нас в базе 3000 железных людей. Нам бы разнообразия.

Для этого есть еще одна чудная библиотечка faker. Ставим:

  gem install faker

Теперь перепишем наш пример, добавив пару дополнительных полей и оформив в rake задачу, чтобы удобно было запускать, например в production:

  require ‘populator’
  require ‘faker’

  require ‘rake’
  require ‘rake/testtask’
  require ‘rake/rdoctask’

  require ‘rubygems’

  require(File.join(File.dirname(__FILE__), ‘../../config/environment.rb))

  namespace :populate do
     desc “Add test data”
     task(:users) do
       User.populate(3000) do |user|
         user.first_name = Faker::Name.first_name # генерирует Имя
         user.last_name = Faker::Name.last_name   # Фамилию
         user.email = Faker::Internet.email       # мыло
         user.login = Faker::Internet.user_name   # логин
         user.phone = Faker::PhoneNumber.phone_number # номер телефона
         user.about = Faker::Lorem.paragraphs( 5 ) # О себе – 5 параграфов
       end
    end
  end

Теперь у нас в базе в любой конфигурации может быть 3000 пользователей с совершенно разными данными. Очень удобно. Сокращает время, и появляются дополнительные возможности тестирования.

Оригинал Статьи

Источник: smartviolet.com

Язык Ruby: события за неделю (21.11-28.11.2008)

Несмотря на осень и даже почти зиму, последние несколько дней были временем обновления: вышли новые версии Ruby on Rails и Merb, обновились APIdock и rubyonrails.org. Подробнее об этом читайте далее.

Источник: rubymag.ru

Новое в Edge Rails: рутеры для плагинов

Если вы создаете или уже создали rails-плагин, который требует доступа к рутеру Rails, вам больше не нужно просить пользователя добавить строки в RAILS_ROOT/config/routes.rb.

Теперь вы можете определить все в config/routes.rb своего плагина. Rails автоматически загрузит эту информацию.

Эта новость без ссылки.

Источник: rubyflow.ru

Markaby: советы

Markaby означает Markup as Ruby. Другими словами, это шаблонный язык (наподобие HAML), который позволяет генерировать HTML, используя для этого чистый Ruby.

Ссылки:

Источник: rubyflow.ru

Новое видео "Блог за 15 минут"

Обновлен морально устаревший скринкаст о том, как просто создать блог с помощью RoR, расположенный на официальном сайте Rails.

Благодаря Райану Бэйтсу (Ryan Bates), railscasts.com, этот ролик демонстрирует работу Rails 2.2.

Здесь же, в разделе Screencasts, вы найдете ссылки на коммерческие ресурсы с видеокурсами.

Источник: rubyflow.ru

Видео с RubyConf 2008

Для тех, кто понимает английский, доступно видео с конференции RubyConf 2008.

Источник: rubyflow.ru

Новое в Edge Rails: больше не будет методов formatted_xxx для рутеров

Как сообщает Райан Скрэпс (Ryan Scraps), эти методы потребляли много памяти, а использовались крайне редко.

В будущем, если вам потребуется указать формат, то воспользуйтесь :format.

Это изменение ожидается в Rails v2.3/3.0

Подробности…

Источник: rubyflow.ru

Три инструмента для "сушки" (DRYing) вашего кода [1]

DRY (Don’t Repeat Yourself!), в переводе с английского “не повторяй себя”. Наверное, вы не раз уже встречались с этой аббревиатурой.

Когда проект небольшой и вы единственный программист, следовать принципу DRY несложно. Но что если код приложения составляет уже тысячи строк, и работает над ним команда разработчиков. Сложно быть уверенным в том, что нет повторений. Согласны?

В этой статье мы рассмотрим три продукта, которые в той или иной степени помогают следовать DRY-принципу.

Источник: rubymag.ru

Вход для пользователей

Новые пользователи