渲染自定义视图而不是默认的Devise视图 - Rails

时间:2015-08-05 11:17:28

标签: ruby-on-rails ruby ruby-on-rails-4 devise rendering

我已经更改了Devise gem生成的视图,但是Rails一直在从Devise的gem文件路径中渲染文件。

呈现/Users/Jeremy/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/devise-3.5.1/app/views/devise/shared/_links.html.erb < / p>

P / S - 我已经将config.scoped_views更改为true

2 个答案:

答案 0 :(得分:3)

覆盖默认Devise’s views非常简单直接,我们需要做的就是通过以下单个命令在app/views文件夹中生成这些视图。

rails g devise:views

生成以下views

app/views/devise/confirmations
app/views/devise/mailer
app/views/devise/passwords
app/views/devise/registrations
app/views/devise/sessions
app/views/devise/shared
app/views/devise/unlocks

无需其他更改。 如果您已经完成,则需要在app/views/devise内移动文件夹

答案 1 :(得分:0)

如果您正在使用Haml,那么在生成视图后,以下终端调用将非常有用:

$ gem install html2haml

$ for file in app/views/devise/**/*.erb; do html2haml -e $file ${file%erb}haml && rm $file; done