Primeira postagem aqui! Estou tentando estender o devise para usar a opção recuperável para que um usuário possa enviar a si mesmo um e-mail com um link de redefinição de senha.
Eu tenho a opção recuperável definida em meu modelo user.rb:
devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable, :confirmable, :omniauthable, :omniauth_providers => [:facebook]
Eu adicionei o seguinte ao formulário de login em views / devise / sessions / new.html:
<div class="form-group">
<%= f.label :password_confirmation, class: "sr-only" %>
<%= f.password_field :password_confirmation, placeholder: "Confirm Password", autocomplete: "off", class: "form-control" %>
</div>
No entanto, quando clico nesse link, ele me leva a http: // localhost: 3000 / users / password / new , a página está em branco (puxa o cabeçalho e o rodapé, mas nenhum conteúdo), o que me sugere que eu tenha essa página já, mas não consigo localizá-lo na minha base de código, correto? Suponho que se eu não tivesse essa página, ela geraria um erro 404?
Portanto, as coisas que procuro entender são:
a) Como faço para criar uma nova visualização e exibi-la nesse URL b) Preciso adicionar o formulário de e-mail e o botão de envio, mas com o que esse código se parece?
Qualquer ajuda seria muito apreciada, eu sei que isso provavelmente é algo bastante básico, eu simplesmente não consigo entender!
Rails versão 4.2.0
Ruby versão 2.0.0
Desde já, obrigado.
E
A fim de ter e modificar visões do projeto, você deve gerá-las. Portanto, execute este comando no diretório do seu projeto: rails generate devise:views
Isso irá gerar visualizações em "prject_path / app / views / devise" que serão usadas em todos os modelos de dispositivos. Se você tiver mais de um modelo de dispositivo, deve usar: rails generate devise:views model_name
Isso gerará "prject_path / app / views / model_name" e será usado apenas para um modelo. A visualização de redefinição de senha é "prject_path / app / views / devise / passwords / edit.html.erb" e tem a funcionalidade necessária, mas para enviar e-mails você deve configurar seu aplicativo mais mal. Eu recomendo a você este: Getting Devise 1.3.4 para enviar e-mails com o Gmail em desenvolvimento
Este artigo é coletado da Internet.
Se houver alguma infração, entre em [email protected] Delete.
deixe-me dizer algumas palavras