Não permitir visualizar uma view pela URL
|
|
Estou abrindo todas minhas views dentro de uma DIV, e gostaria de impedir o acesso a essas views via URL. Como faço isso? |
|
|
Por “dentro de uma DIV” sub-entendo que seja AJAX. Se você está utilizando os métodos nativos do Rails (Prototype), pode verificar o header XHR. def xhr_request No seu controller: Não testei, mas deve funcionar! |
|
|
Se tiver usando formulário form_remote_tag defina o atributo na view e no controller defina que as ações não poderão ser acessadas por GET e somente por POST.
|
|
|
Sobre a dica do Shairon, ela soh funciona quando eu executar um POST, mas eu quero que execute quando carregar o controller. E sobre a dica do Nando, quando eu vou abrir qualquer tela, aparece a seguinte msg: |
|
|
Ehehe…consegui. No application.rb eu coloquei o metodo xhr_request, mas não o before_filter :xhr_request, e no controller que eu queria impedir o acesso via URL, ai sim eu coloquei esse before_filter. Porem, percebi que sem o skip_before_filter funcionou o mesmo jeito, Qual seria a função deste comando? |
|
|
O skip_before_filter não executa o filtro especificado para as actions que você definir. |

