gremal
(usa Debian)
Enviado em 29/05/2009 - 11:53h
Ola pessoal,
sou novo em metodologia de programação em MVC e muito mais em Ruby on Rails. Preciso concatenar o TextField e o SelectBox dessa view:
<h1>Login</h1>
<%= form_tag :action =>"login" %>
<p>Digite seu usuário e senha para se logar no site</p>
<p> Login </p>
<%= text_field_tag :login, params[:email], :maxlength => 20 %>
@<%= select_tag( :login, options_for_select(@select_box)) %>
<p> Senha </p>
<%= password_field_tag :password,'', :maxlength => 10 %>
<p><%= submit_tag "Entrar" %> </p>
bem simples. O meu controller esta incompleto, pois necessito da resposta para termina-lo, ei o tal:
class LoginController < ApplicationController
def login
@select_box = ["agro.ufg.br","bc.ufg.br","cai.ufg.br","cegef.ufg.br","cegraf.ufg.br","cemeq.ufg.br","cepae.ufg.br","cercomp.ufg.br","cienciassociais.ufg.br","cpad.ufg.br","cppd.ufg.br",
"cs.ufg.br","daa.ufg.br","ddrh.ufg.br","direito.ufg.br","dmp.ufg.br","dp.ufg.br","eec.ufg.br","facomb.ufg.br","fanut.ufg.br","farmacia.ufg.br","fav.ufg.br","fe.ufg.br",
"fef.ufg.br","fen.ufg.br","filosofia.ufg.br","fis.ufg.br","hc.ufg.br","historia.ufg.br","icb.ufg.br","iesa.ufg.br","if.ufg.br","iptsp.ufg.br","jatai.ufg.br","letras.ufg.br",
"mail.ciar.ufg.br","mail.inf.ufg.br","mat.ufg.br","medicina.ufg.br","museu.ufg.br","musica.ufg.br","necasa.ufg.br","odonto.ufg.br","pj.ufg.br","proad.ufg.br","procom.ufg.br",
"prodirh.ufg.br","proec.ufg.br","prograd.ufg.br","prppg.ufg.br","quimica.ufg.br","radio.ufg.br","reitoria.ufg.br","vet.ufg.br"]
if request.post?
@usuarios = Usuario.find_by_sql ["SELECT * FROM usuarios u WHERE (u.email = ?) AND (u.password = ? )", email, password]
if @usuarios
session[:usuario] = @usuarios.id
redirect_to :controller => "inicio", :action => "inicial"
end
else
flash[:notice] = "Invalid login and/or password."
end
end
ha mais dois metodos neste, que nao convem coloca-los aqui.
Percebam que o problema esta justamente nessa linha:
@usuarios = Usuario.find_by_sql ["SELECT * FROM usuarios u WHERE (u.email = ?) AND (u.password = ? )", email, password]
pois o primeiro interrogação nao deveria ser email, e sim a concatenação do TextField com o SelectBox. Consegui ser claro? Obrigado pessoal.