如何解决每个模型的不同Devise配置
我有两种使用Devise进行身份验证的模型:import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.WindowConstants;
public class Drawing2 extends JPanel {
private JFrame frame;
public Drawing2() {
setPreferredSize(new Dimension(100,100));
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(Color.BLUE);
g.fillOval(25,25,50,50);
}
private void showGui() {
frame = new JFrame("Drawing");
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.add(this,BorderLayout.CENTER);
frame.pack();
frame.setLocationByPlatform(true);
frame.setVisible(true);
}
public static void main(String[] args) {
new Drawing2().showGui();
}
}
和User
,它们的页面和视图严格分开(前者可以访问应用程序,后者只能访问一个上传视图)。 / p>
我遵循了this guide,并且一切正常,但是现在我正在寻找为每种模型使用不同的Devise配置的方法。
例如:Uploader
的{{1}}和config.authentication_keys = [:email]
的{{1}}。这可能吗?
解决方法
使用标准的Devise配置文件为所有配置选项设置合理的默认设置。
然后针对要在其他模型中覆盖的特殊情况,您可以在模型本身中进行设置:
class Uploader < ActiveRecord::Base
devise :database_authenticatable,:registerable,:recoverable,:etc
# Override authentication_keys for Uploader
self.authentication_keys = [:username]
end
应该做到这一点。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。