Forum: Rails-ES web multiidioma

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Aebf4e72990aa0bbfcb782d65bf5200f?d=identicon&s=25 Miguel Angel Calleja Lázaro (Guest)
on 2007-05-28 10:19
(Received via mailing list)
Voy a emprender mi tercer proyecto en rails en apenas 2 meses desde que
empecé, es increible, mi satisfacción por rails crece por momentos, y
todo gracias a vosotros por el apoyo que ofreceis en esta lista, cada
día aprendo más y más.
Ahora necesito hacer una web multiidioma? tengo alguna idea pero traida
de mis proyectos en PHP, seguro que en rails es mucho más fácil, qué me
recomiendan para hacerlo? muchísimas gracias
E26efa760667c4bcf5bd1d9a6f4d6910?d=identicon&s=25 Héctor (Guest)
on 2007-05-28 10:46
Mira globalize y gettext. Aún no los he utilizado, pero creo que
básicamente esas son las alternativas más extendidas.

Miguel Angel Calleja Lázaro wrote:
> Ahora necesito hacer una web multiidioma? tengo alguna idea pero traida
> de mis proyectos en PHP, seguro que en rails es mucho m�s f�cil, qu� me
> recomiendan para hacerlo? much�simas gracias
Aebf4e72990aa0bbfcb782d65bf5200f?d=identicon&s=25 Miguel Angel Calleja Lázaro (Guest)
on 2007-05-28 11:19
(Received via mailing list)
Héctor escribió:

>>
>
>
>
>
Si, estaba viendo globalize, siguiendo los pasos de [1], lo estoy
probando en local, uso la versión 1.2.2 de rails, por lo cual instalo la
versión for-1.2, pero me falla y me sale este error:
Exec format error - rake -f
C:/ruby/trabajos/globalize/vendor/plugins/for-1.2/../../../Rakefile
globalize:upgrade_schema_to_1_dot_2 && exit 1

    * script/plugin install
      http://svn.globalize-rails.org/svn/globalize/branc...
      (this is for Rails 1.2)
    * script/plugin install
      http://svn.globalize-rails.org/svn/globalize/branc...
      (this is for Rails 1.1)

He probado instalando la otra versión, for-1.1, que no debería si uso la
1.2.2, no?? y parece que lo ha instalado bien, pero luego al hacer rake
globalize:setup me salta el siguiente error de mysql
rake aborted!
Mysql::Error: Identifier name
'index_globalize_translations_on_table_name_and_it
em_id_and_language_id' is too long: CREATE  INDEX
`index_globalize_translations_
on_table_name_and_item_id_and_language_id` ON globalize_translations
(`table_nam
e`, `item_id`, `language_id`)

[1] http://wiki.globalize-rails.org/globalize/show/Exa...

Debería instalar la for-1.2 si estoy usando rails 1.2.2, pero no
entiendo el error
383b46748eba2d733d99a3b299090e8b?d=identicon&s=25 Mauro Pompilio (Guest)
on 2007-05-28 12:05
(Received via mailing list)
Héctor escribió:
>
>
Puedes echarle un ojo a una de las ponencias que se hicieron en la
RailsConf Hispana del año pasado y hablaban respecto a este tema, seguro
que sacas algo interesante:

http://2006.conferenciarails.org/material/david-ba...

Saludos,
   Mauro.
Aebf4e72990aa0bbfcb782d65bf5200f?d=identicon&s=25 Miguel Angel Calleja Lázaro (Guest)
on 2007-05-28 17:40
(Received via mailing list)
Mauro Pompilio escribió:

>>>Ahora necesito hacer una web multiidioma? tengo alguna idea pero traida
>que sacas algo interesante:
>
He probado a usar Globalize siguiendo el ejemplo de [1], sigo paso a
paso, si entro en /admin/products  me da una ruta inexistente del tipo
/es/admin/admin/products:
ActionController::RoutingError (Recognition failed for
"/es/admin/admin/products               "):

/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/routing.
rb:522:in `recognition_failed'

/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/routing.
rb:512:in `recognize!'
    /usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/dispatcher.rb:38:in
`dispatch'
    dispatch.cgi:10

y si entro en /product miro el log y está todo el rato haciendo un bucle
hasta que se peta el navegador, está procesando y redirigiendo, así todo
el rato:
Processing ProductController#index (for ... at 2007-05-28 11:34:51)
[GET]
  Session ID: 5986ceaea1fcbcd5ebc26c9f95c0f6b5
  Parameters: {"action"=>"index", "controller"=>"product"}
  Globalize::Language Columns (0.000517)   SHOW FIELDS FROM
globalize_languages
  Globalize::Language Load (0.000220)   SELECT * FROM
globalize_languages WHERE (globalize_languages.`rfc_3066` = 'es-ES' )
LIMIT 1
  Globalize::Language Load (0.000162)   SELECT * FROM
globalize_languages WHERE (globalize_languages.`iso_639_1` = 'es' )
LIMIT 1
Redirected to http://url/es/product
Completed in 0.03645 (27 reqs/sec) | DB: 0.00090 (2%) | 302 Found
[http://url/product]

No se, he puesto exactamente lo mismo que en el ejemplo, no se qué tengo
mal

[1] http://wiki.globalize-rails.org/globalize/show/Exa...
Aebf4e72990aa0bbfcb782d65bf5200f?d=identicon&s=25 Miguel Angel Calleja Lázaro (Guest)
on 2007-05-29 10:09
(Received via mailing list)
>
>  Session ID: 5986ceaea1fcbcd5ebc26c9f95c0f6b5
>[http://url/product]
>
>No se, he puesto exactamente lo mismo que en el ejemplo, no se qué tengo mal
>
>[1] http://wiki.globalize-rails.org/globalize/show/Exa...
>_______________________________________________
>Ror-es mailing list
>Ror-es@lists.simplelogica.net
>http://lists.simplelogica.net/mailman/listinfo/ror-es
>
>
Sigo probando globalize [1], alguien sabe por qué me da esta url?
Recognition failed for "/es/admin/admin/products"

Mi routes.rb

map.connect ':locale/:controller/:action/:id'
map.connect ':controller/:action/:id'
map.connect '', :controller => 'product', :action => 'index'
map.connect 'admin', :controller => 'admin/products', :action => 'index'

El application:
class ApplicationController < ActionController::Base
before_filter :set_locale

  def set_locale
    if !params[:locale].nil? && LOCALES.keys.include?(params[:locale])
      Locale.set LOCALES[params[:locale]]
    else
      redirect_to params.merge( 'locale' => Locale.base_language.code )
    end
  end
end

El environtment:

include Globalize
Locale.set_base_language('es-ES')
LOCALES = {'en'=>'en-US'}.freeze

Usando la consola he comprobado que funciona globalize, pero no entiendo
por qué me hace esa url, alguien sabe por qué? Gracias

[1] http://wiki.globalize-rails.org/globalize/show/Exa...
320b340a012b1a5db9e7268ed1566016?d=identicon&s=25 Patricio Soto (warmen)
on 2007-06-04 22:03
4abebd2f6659dd76c634dd9f48c24a3f?d=identicon&s=25 David Arango (Guest)
on 2007-06-04 23:07
(Received via mailing list)
On 5/29/07, Miguel Angel Calleja Lázaro <mangelcl@yahoo.es> wrote:
> Sigo probando globalize [1], alguien sabe por qué me da esta url?
> Recognition failed for "/es/admin/admin/products"

¿Qué url estás metiendo en el navegador? ¿has probado a ir
directamente a es/admin/products?

No se si podrá ser que no estás incluyendo es-ES en environment:

 include Globalize
 Locale.set_base_language('es-ES')
 LOCALES = {'en'=>'en-US', 'es' => 'es-ES'}.freeze

Yo también añadiría esta ruta, aunque no te puedo jurar que se lo que
estoy haciendo:

map.connect ':locale/admin', :controller => 'admin/products', :action =>
'index'
map.connect 'admin', :controller => 'admin/products', :action => 'index'

Mi triste experiencia es que Globalize es un dolor, y no es el típico
plugin que si no funciona bien puedes prescindir de él, toda tu
aplicación termina enchufada con él de una forma casi obscena y luego
si algo falla termina cascando todo.



>
>
> include Globalize
> Locale.set_base_language('es-ES')
> LOCALES = {'en'=>'en-US'}.freeze

--
David Arango, el único desarrollador con una orden de alejamiento de
Jeffrey Zeldman
Simplelogica.net, ahora con un 33,3% más de intromisión en listas de correo

Cuando no hago otra cosa escribo en mildiez.net
Aebf4e72990aa0bbfcb782d65bf5200f?d=identicon&s=25 Miguel Angel Calleja Lázaro (Guest)
on 2007-06-06 13:21
(Received via mailing list)
David Arango
escribió:
>
>map.connect 'admin', :controller => 'admin/products', :action => 'index'
>
>Mi triste experiencia es que Globalize es un dolor, y no es el típico
>plugin que si no funciona bien puedes prescindir de él, toda tu
>aplicación termina enchufada con él de una forma casi obscena y luego
>si algo falla termina cascando todo.
>
>
>
>
>
Si, incluía el set_base_language en environtment y la variable LOCALES
también.
Tal como lo tenía configurado sin tocar nada he tratado de cambiar mi
set_locale, y ahora si me funciona.

class ApplicationController < ActionController::Base
before_filter :set_locale

def set_locale
    begin
        Locale.set LOCALES[params[:locale]]
    rescue ArgumentError
        redirect_to params.merge( 'locale' => Locale.base_language.code
)
    end
end
end

Antes tenía este otro y no hacía nada o me daba urls raras, no se por
qué:def set_locale
    if !params[:locale].nil? && LOCALES.keys.include?(params[:locale])
      Locale.set LOCALES[params[:locale]]
    else
      redirect_to params.merge( 'locale' => Locale.base_language.code )
    end
 end
This topic is locked and can not be replied to.