Artículo
|
Disponible la versión 3.0 de Rails |
Después de 2 años de trabajo, el equipo de Rails ha anunciado que ya está aquí la versión 3. En el desarrollo de esta nueva versión, han colaborado más de 1600 personas, para conseguir que todo sea mejor, más rápido y más funcional.
Esta nueva versión trae muchas mejoras y nuevas funcionalidades. Vamos a ver algunas de ellas.
Nuevo motor de consultas Active Record
Active Record ha adoptado el motor de consultas AREL para poder hacer las consultas más consistentes. Esto hace que sea mucho más sencillo hacer consultas complejas sobre varias iteraciones. También conseguimos retrasar la ejecución de la consulta hasta que esta sea necesaria. Un ejemplo es el siguiente.
Nuevo router para Action Controller
En esta nueva versión de Rails, se ha renovado por completo la sintaxis del router para favorecer el estilo REST y conseguir que esta sea más flexible. Aquí os dejamos un ejemplo.
Nuevo Action Mailer
En Rails 3 se ha tomado la decisión de hacer Action Mailer como controlador, con lo que conseguimos que la acción esté más cerca del controlador, compartiendo código subyacente. He aquí una muestra de lo que parece ahora.
Administrar dependencias con Bundler
La gestión de todas las dependencias de una aplicación Rails ha sido durante mucho tiempo una molestia y muchas complicaciones. Tuvimos config.gem, exteriores Capistrano, las tareas de configuración personalizada rastrillo, y otras soluciones incompletas.
Bundler limpia todo eso y le permite especificar las bibliotecas, los marcos, y los plugins que su aplicación necesita utilizar. Todas las aplicaciones Rails 3 nacen con un Gemfile para controlar todo.
XSS protección por defecto
Internet es un sitio peligroso y Rails 3 mira por la seguridad de los sitios. Desde un principio, Rails ha contado con la protección CRSF y la protección para la inyección SQL. Ahora Rails 3 aumenta aún más la seguridad con la protección XSS.
Diga adiós a los problemas de codificación
En esta nueva versión se ha trabajado para evitar los posibles problemas de codificación de los caracteres. Es normal que aparezcan los simbolos ? cuando se trabaja con distintos tipos de codificación, pero con Rails 3 y en combinación con Ruby 1.9, este problema desaparece.
API oficial de plugins
La nueva API Railtie permite modificar el incorporado en los generadores, agregar tareas rake, configurar las opciones por defecto de Rails, indicando si el código se ejecute lo más pronto posible, o tan tarde como sea necesario. Los plugins de Rails como Diseñar fueron capaces de añadir una integración mucho mejor en el Rails 3 de la versión de su plugin.
Rewritten internos
Hemos vuelto a escribir la parte interna de Action Pack y Railties, haciéndolos mucho más flexible y más fácil de extender. En lugar de una sola ActionController monolítica: Base, Rails 3 expone una serie de módulos, cada uno con las API definidas, que se pueden mezclar y combinar para crear controladores de propósito especial para su propio uso.
Para ver más información sobre lo nuevo de Rails 3, pueden ir a su página oficial.
Esta nueva versión trae muchas mejoras y nuevas funcionalidades. Vamos a ver algunas de ellas.
Nuevo motor de consultas Active Record
Active Record ha adoptado el motor de consultas AREL para poder hacer las consultas más consistentes. Esto hace que sea mucho más sencillo hacer consultas complejas sobre varias iteraciones. También conseguimos retrasar la ejecución de la consulta hasta que esta sea necesaria. Un ejemplo es el siguiente.
users = User.where(:name => "david").limit(20)
users = users.where("age > 29")
# SELECT * FROM users
# WHERE name = "david" AND age > 29
# ORDER BY name
# LIMIT 20
users.order(:name).each { |user| puts user.name }
Nuevo router para Action Controller
En esta nueva versión de Rails, se ha renovado por completo la sintaxis del router para favorecer el estilo REST y conseguir que esta sea más flexible. Aquí os dejamos un ejemplo.
resources :people do
resource :avatar
collection do
get :winners, :losers
end
end
# /sd34fgh/rooms
scope ':token', :token => /w{5,5}/ do
resources :rooms
end
# /descriptions
# /pl/descriptions
# /en/descriptions
scope '(:locale)', :locale => /en|pl/ do
resources :descriptions
root :to => 'projects#index'
end
Nuevo Action Mailer
En Rails 3 se ha tomado la decisión de hacer Action Mailer como controlador, con lo que conseguimos que la acción esté más cerca del controlador, compartiendo código subyacente. He aquí una muestra de lo que parece ahora.
class Notifier < ActionMailer::Base
default :from =>
"Highrise <system@#{APPLICATION_DOMAIN}>"
def new_project(digest, project, person)
@digest, @project, @person = digest, project, person
attachments['digest.pdf'] = digest.to_pdf
attachments['logo.jpg'] = File.read(project.logo_path)
mail(
:subject => "Your digest for #{project.name}",
:to => person.email_address_with_name
) do |format|
format.text { render :text => "Something texty" }
format.html { render :text => "Something <i>texty</i>" }
end
end
end
Administrar dependencias con Bundler
La gestión de todas las dependencias de una aplicación Rails ha sido durante mucho tiempo una molestia y muchas complicaciones. Tuvimos config.gem, exteriores Capistrano, las tareas de configuración personalizada rastrillo, y otras soluciones incompletas.
Bundler limpia todo eso y le permite especificar las bibliotecas, los marcos, y los plugins que su aplicación necesita utilizar. Todas las aplicaciones Rails 3 nacen con un Gemfile para controlar todo.
XSS protección por defecto
Internet es un sitio peligroso y Rails 3 mira por la seguridad de los sitios. Desde un principio, Rails ha contado con la protección CRSF y la protección para la inyección SQL. Ahora Rails 3 aumenta aún más la seguridad con la protección XSS.
Diga adiós a los problemas de codificación
En esta nueva versión se ha trabajado para evitar los posibles problemas de codificación de los caracteres. Es normal que aparezcan los simbolos ? cuando se trabaja con distintos tipos de codificación, pero con Rails 3 y en combinación con Ruby 1.9, este problema desaparece.
API oficial de plugins
La nueva API Railtie permite modificar el incorporado en los generadores, agregar tareas rake, configurar las opciones por defecto de Rails, indicando si el código se ejecute lo más pronto posible, o tan tarde como sea necesario. Los plugins de Rails como Diseñar fueron capaces de añadir una integración mucho mejor en el Rails 3 de la versión de su plugin.
Rewritten internos
Hemos vuelto a escribir la parte interna de Action Pack y Railties, haciéndolos mucho más flexible y más fácil de extender. En lugar de una sola ActionController monolítica: Base, Rails 3 expone una serie de módulos, cada uno con las API definidas, que se pueden mezclar y combinar para crear controladores de propósito especial para su propio uso.
Para ver más información sobre lo nuevo de Rails 3, pueden ir a su página oficial.
![]() |
Publicado por: angel carrero |
|
|
Comentarios
Últimas noticias
· factura
Últimos artículos














































