Pegar valor de GET no Template

53 views
Skip to first unread message

Aron Stall

unread,
May 16, 2013, 8:45:02 AM5/16/13
to django...@googlegroups.com
Preciso fazer o seguinte, se (IF) tiver algum parâmetro na URL de busca ( ?q=busca ), ele deve mostrar o valor de " q " no template, mas se não tiver nenhum parâmetro, mostrar um texto pré definido.

Espero que tenham entendido, e agradeço desde já.

Luis Eduardo Vilella

unread,
May 16, 2013, 9:03:04 AM5/16/13
to django...@googlegroups.com
Eai Aron,

Não sei se entendi, mais uma opção é  você fazer duas urls para a mesma view, uma com o parâmetro outra sem, na view você pode colocar (request, q=None), ai trate da maneira que preferir "q", formate-o e coloque no context, com isto você não precisa fazer condicional nenhuma no template.

Leandro - ProfessionalIT - Soluções em Tecnologia da Informação.

unread,
May 16, 2013, 9:10:24 AM5/16/13
to django...@googlegroups.com
Tenta assim:

request.GET.get('q', None)


Atenciosamente,
Leandro Severino - Professional in Information Technology.
MSNlea...@professionalit.com.br  |  GTalklsev...@gmail.com | Skype: leandro-professionalit
Sitehttp://www.professionalit.com.br |  Bloghttp://blog.professionalit.com.br | Twitter: http://twitter.com/professionalit
Mobile: (51) 9390.3511 (Claro) e (51) 8272.5841 (TIM)

 




2013/5/16 Aron Stall <aronk...@gmail.com>
Preciso fazer o seguinte, se (IF) tiver algum parâmetro na URL de busca ( ?q=busca ), ele deve mostrar o valor de " q " no template, mas se não tiver nenhum parâmetro, mostrar um texto pré definido.

Espero que tenham entendido, e agradeço desde já.

--
Você está recebendo esta mensagem porque se inscreveu no grupo "Django Brasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para django-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 

Aron Stall

unread,
May 16, 2013, 9:23:01 AM5/16/13
to django...@googlegroups.com
Não teria como pegar esse valor no template?

Fábio Cerqueira

unread,
May 16, 2013, 9:51:27 AM5/16/13
to django Brasil
Sugiro você pegar esse valor da busca na view com: query = request.GET.get('q', None) e passar no contexto.

No template você verifica a variável {% if query %}


2013/5/16 Aron Stall <aronk...@gmail.com>
Não teria como pegar esse valor no template?

--
Você está recebendo esta mensagem porque se inscreveu no grupo "Django Brasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para django-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 



--
Fábio Cerqueira

Aron Stall

unread,
May 16, 2013, 1:05:13 PM5/16/13
to django...@googlegroups.com
Obrigado a todos, funcionou!

Mauro Alexandre

unread,
May 16, 2013, 2:03:31 PM5/16/13
to django...@googlegroups.com
Essa solução, talvez seja mais elegante Aron.

Adicione o processador no seu settings.

TEMPLATE_CONTEXT_PROCESSORS = (
  # ...
  'django.core.context_processors.request',
  # ...
)

E ultilize {{request}} em seus templates.

Abraço.


Em 16 de maio de 2013 14:05, Aron Stall <aronk...@gmail.com> escreveu:
Obrigado a todos, funcionou!

Fábio Cerqueira

unread,
May 16, 2013, 2:10:23 PM5/16/13
to django Brasil
Quanto mais lógica você tirar dos templates será melhor.


2013/5/16 Mauro Alexandre <upm...@gmail.com>



--
Fábio Cerqueira

Reply all
Reply to author
Forward
0 new messages