качество и надёжность с 2008 года

8 (800) 200-25-11

Техническая поддержка support@komtet.ru —

круглосуточно и без выходных дней

load-whois

Онлайн-касса

для интернет-магазина

Подключите ваш интернет-магазин

к онлайн-кассе в соответствии с 54-ФЗ

«Новинки» в Edge Rails

Новое в ActionView и хелперах

Теперь защита от Cross Site Scripting (XSS) предоставляется по умолчанию. Теперь для того, чтобы отрендерить во view HTML-содержимое потребуется использовать метод html_safe!:

<%= 'my safe string'.html_safe! %>

Из-за этого потребовалось модифицировать код многих хелперов. Метод distance_of_time_in_words теперь может выдавать значения over, about и almost. Это позволит более точно указывать время, прошедшее с определённого момента в прошлом:

assert_equal "almost 2 years",  distance_of_time_in_words(from, to + 2.years - 3.months + 1.day)
assert_equal "about 2 years",   distance_of_time_in_words(from, to + 2.years + 3.months - 1.day)
assert_equal "over 2 years",    distance_of_time_in_words(from, to + 2.years + 3.months + 1.day)
assert_equal "over 2 years",    distance_of_time_in_words(from, to + 2.years + 9.months - 1.day)
assert_equal "almost 3 years",  distance_of_time_in_words(from, to + 2.years + 9.months + 1.day)

Теперь можно явно передавать коллекцию объектов в метод fields_for, как в следующем примере передается коллекция @active_projects:

<% form_for @person, :url => { :action => "update" } do |person_form| %>
  ...
  <% person_form.fields_for :projects, @active_projects do |project_fields| %>
    Name: <%= project_fields.text_field :name %>
  <% end %>
<% end %>

В метод content_tag_for третий параметр, который ранее был необязательным, теперь используется как префикс для генерации имени CSS-класса элемента:

<%= content_tag_for(:li, @post, :published) %>
# => <li id="published_post_123" class="published_post">...</li>

Новое в модулях ActiveResource и ActiveRecord

В модуль ActiveResource добавлен метод update_attributes, знакомый по работе с модулем ActiveRecord. Создание объекта с помощью ассоциации has_one с наложенными на ассоциацию ограничениями, автоматически приводит к заполнению полей объекта значениями, заданными в ограничениях:

class Blog
  has_author :commit_author, :class_name => 'Author', :conditions => {:name => "Luciano Panaro"}
end

@blog.build_commit_author
# => #<Author name: "Luciano Panaro" ... >

В метод accepts_nested_attributes_for в ActiveRecord добавлен параметр limit, задающий число записей для обработки. Параметр _delete переименован в _destroy чтобы лучше отображать специфику выполняемых действий. Добавлен параметр autosave, позволяющий не сохранять связанные объекты, если они являются вновь созданными.

Новое во «внутренней кухне»

Метод Hash#from_xml теперь поддерживает разбор значений тега CDATA при парсинге XML-файлов. Обработка глобальных исключений перенесенаRails::Application добработан для лучшей инкапсуляции функционала, отвечающего за запуск и конфигурирование приложения. Кроме того, в этот модуль перенесён функционал, отвечающий за инициализацию в модуль ActionDispatch::Rescue, так что теперь обработка исключений осуществляется на уровне Rack.

Модуль Rails::Application добработан для лучшей инкапсуляции функционала, отвечающего за запуск и конфигурирование приложения. Кроме того, в этот модуль перенесён функционал, отвечающий за инициализацию.

 

Подготовлено по материалам http://weblog.rubyonrails.org.

Перевод КОМТЕТ komtet.ru

Другие документы на эту тему

Виртуальный хостинг Perl/PHP/Python/Ruby

Тарифные планы «Виртуальный хостинг» — от размещения статических HTML-страниц, до поддержки PHP, Python, CGI скриптов (Shell, Perl), SSI, Ruby. В рамках тарифных планов предоставляется доступ к серверам баз данных MySQL или PostgreSQL.

Ruby on Rails

Благодаря своим многочисленным преимуществам, Ruby on Rails или RoR «растёт» от версии к версии. Хостинг КОМТЕТ размещает проекты Клиентов на Ruby on Rails, следит за обновлениями как языка программирования Ruby, так и фреймворка Rails. Доступен запуск проектов на нескольких версиях фреймворка. Статьям по Ruby on Rails отведён этот раздел сайта хостинга КОМТЕТ.

Клиентам — домены в подарок!
Бесплатный тест виртуального хостинга
Перенос сайта — бесплатно
Все акции
На сайте КОМТЕТ используются cookie-файлы, данные о IP-адресе и местоположении посетителей. Если, прочитав это сообщение, вы остаетесь на нашем сайте, это означает, что вы не возражаете против использования этих технологий.