Como puedo conseguir solamente esta cadena ya que esta me permite
formatear las entradas y no puedan hackearlas, algo de seguridad, por
que las utilice en otros metodos mas nativos y no lo formatea, sino los
anexa al ultimo del string, que metodo se utiliza para que los ingrese y
formatee en el string, como por ejemplo:
Mal : Persona.find(:all, :conditions => “name = ‘#{nombre}’”)
Bien : Persona.find(:all, :conditions => [“name = ?”, nombre)
Como puedo conseguir solamente esta cadena ya que esta me permite
formatear las entradas y no puedan hackearlas, algo de seguridad, por
que las utilice en otros metodos mas nativos y no lo formatea, sino los
anexa al ultimo del string, que metodo se utiliza para que los ingrese y
formatee en el string, como por ejemplo:
Mal : Persona.find(:all, :conditions => “name = ‘#{nombre}’”)
Bien : Persona.find(:all, :conditions => [“name = ?”, nombre)
Si estas en lo correcto, pero creo que no se me entendio mi pregunta,
¿Como puedo conseguir esta cadena pero en un string? Hago esta pregunta
por que necesito esta consulta SQL formateada y ademas es mas segura
dentro de una variable para llamarla en un metodo que se ejecuta
directamente en la Base de Datos.
por que necesito esta consulta SQL formateada y ademas es mas segura
dentro de una variable para llamarla en un metodo que se ejecuta
directamente en la Base de Datos.
Si entiendomejor tu problema es que no sabes cuantos parametros vas a tener
para armar el WHERE, verdad?
Creo que lo que Carlos quiere es saber cuál es el método que utiliza
Rails en las entrañas de find() para interpolar variables a partir de
un array como [sentencia_sql, vbl1, vbl2, …vbln],
Él quiere saber si es posible utilizar ese método en un array y
obtener la cadena SQL correspondiente, todo ello sin tener que
utilizar find() en ningún momento.
Creo que lo que Carlos quiere es saber cu�l es el m�todo que utiliza
Rails en las entra�as de find() para interpolar variables a partir de
un array como [sentencia_sql, vbl1, vbl2, …vbln],
�l quiere saber si es posible utilizar ese m�todo en un array y
obtener la cadena SQL correspondiente, todo ello sin tener que
utilizar find() en ning�n momento.
Se utiliza el metodo sanitize_sql_array() donde le pasamos el array del
tipo
[consulta_sql, parametros, …]
El cual devuelve un string con el remplazo de los ? dentro de la
consulta, por el valor de los parametros, esto se debe de realizar
dentro de los modelos y no asi dentro de los controladores.
Saludos.
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.