AAAaaaAAAaah!!! :-) Me parece que esa parte no aparecia en la version original
del tutorial (a raiz de tu comentario le pegue una hojeada a las dos
versiones).
Ok!
Saludos,
Emmanuel
Fernando Cacciola <[EMAIL PROTECTED]> escribió: Hola Emmanuel,
> Fernando:
>
>> "Si entendí bien, en una aplicación Web simplota:
>> El equivalente a llamar a una función (miembro o no) es
>> "redireccionar a un
>> cierto URL" Y los parametros a la función corresponden a la parte
>> final del URL, luego del ?¿Es mas o menos así?"
>
> Algo asi, si ingreso un url como este:
>
> http://localhost:3000/principal/mi_metodo?mi_variable=Hola
>
> Rails hace lo siguiente: Busca un "controlador" (Una clase derivada
> de la clase ApplicationController, que a la vez se basa en la clase
> ActiveController::Base) con el nombre PrincipalController. Instancia
> un objeto de esa clase, y llama al metodo "mi_metodo". No utiliza el
> parametro "mi_variable" como parametro para el metodo, sino que hace
> disponible a la clase un hash global llamado params, de manera que
> podes hacer algo como esto:
>
> Archivo /app/controller/application.rb
> class ApplicationController < ActionController::Base
> # Porque existe esta clase? para hacer disponible a tus controladores
> # los comportamientos comunes a todos ellos.
> end
>
> Archivo /app/controller/principal.rb
> class PrincipalController < ApplicationController
> def mi_metodo
> mi _variable= params[:mi_variable] # Levanto el parametro
> render :text => "El parametro mi_variable contenia #{mi_variable}"
> end
> end
>
OK
> Ojo que todo esto pasa por default, pero se puede cambiar el
> comortamiento de los urls editando apropiadamente /config/routes.rb.
> P.D.: En rails hay muchos "por default", y esta es una de las cosas
> que hace que el desarrollo sea mas agil.
>
> "Entonces, que el usuario pueda entrar cualquier URL en su browser
> ¿es como
> si un usuario de una Desktop pudiera llamar a cualquier función, así
> de una
> y con cualquier parámetro?"
>
> No, tu usuario solo puede ingresar url que se dirijan a controladores
> que existan y metodos de los mismos que existan Y QUE SEAN PUBLICOS.
>
Ha, OK.
> Hay otras formas de evitar que un usuario acceda a un metodo de tu
> controlador, pero si pones "private" antes del metodo, basta. (Nota:
> a partir de ese private todos los metodos siguientes seran privados a
> menos que pongas "public" antes de definirlo)
>
> class PrincipalController < ApplicationController
> private
> def mi_metodo # No accesible via url
> mi _variable= params[:mi_variable]
> render :text => "El parametro mi_variable contenia
> #{mi_variable}"
> end
> end
>
OK
> "se me voló el gorro como a Boss!!!!"
>
> Mmmm.... no se quien es Boss :)
>
Es uno de los personajes del Tutorial :)
Saludos
Fernando Cacciola
_______________________________________________
ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar
---------------------------------
Todo sobre la Copa América.
Mantenete actualizado con las últimas noticias sobreesta competencia en Yahoo!
Deportes (http://ar.sports.yahoo.com/futbol/copaamerica/index.html).
¡Enterate primero!_______________________________________________
ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar