I'm working on a rails app and to modify the layout of devise pages i used on the root of my rails application
rails g devise:views
so in the directory
app/views
i have all the files of the devise gem.
now that my work is ended i would like to hide those files again maintaining the modifies , how can i do it?
if you know even a way to only hide password it could also work
i didn't found any help in the README file for the plugins
Related
Devise works. I can login and log out, but there are no views in the my project. There is no app/views/devise folder. When I used rails g devise:views nothing appeared. How is Devise even working if there is no html, and how can I get these views to display in my project so I can edit them?
If files are not added, the files added into your gem folder and Devise will use them, but when you run the command, the created folder will just overwrite them.
If rails g devise:views still not working for you, one easy way to do this instead of trying to find what was the issue with the gem or Terminal is to just move them yourself.
Here you have the files Devise views, just copy paste them into your folder and you will be good.
Go to the application root directory and run following command to get views of devise:
rails g devise:views
I read on the documentation that you have to put this line in config/initializers/devise.rb
config.scoped_views = true
you will have access to the file for sessions,
and you can do too :
rails generate devise:views users
to have access to user files
You should take a look : https://github.com/plataformatec/devise
Hope that help
I need to do own administration logic, with it's controllers, view etc... ActiveAdmin and so over are not good for me. But how can i do this in other directory (for example controllers/admin/). How to write then rails g command? (view must be in folder admin too). Also how to connect twitter bootstrap only for admin controllers?
Have a look at this link, where they use the same admin subdirectory grouping (link broken) example. The example is for an older version of Rails, but should be relatively valid for Rails 3.2.
Edit: See this namespaces question.
rails generate controller admin/Users
For bootstrap, just don't use the bootstrap specific id/class attributes in your admin stylesheet.
I created the /views/user/ folder using rails g devise:views but devise is still using the default views somehow.
Am I missing a configuration somewhere?
Yes, read documentation and add to your config/initializers/devise.rb
config.scoped_views = true
Also see that rails g devise:views create app/views/devise containing all needed views. If you don't have many Devise Models in your app DO NOT use above solution but simply edit files in app/views/devise. Then it will work faster, because it don't need to look every time for specified views.
I can't seem to find certain files .. e.g. files for validation (i'm aware we can override this anyway). Where is the devise controller located etc?
Would appreciate some advice on this.
Thanks
Yes, devise is compatible with rails 3.1.
The controllers are located here.
The locale files are located here.
Devise being an engine, you don't need to have the controllers, locales and views (and even assets if there were some) in your application, they can remain in the gem.
Devise being very modular though, you can override the default controllers to add your own actions. See How To : change the default sign in and sign out methods.
Devise is an engine, so you're going to find the actual files in the path reported by the command
gem which devise
On my system is
/Users/fabio/.rvm/gems/ruby-1.9.2-p180/gems/devise-1.4.2/lib/devise
I just added users to my application using devise, and everything is working fine. But I can't see any folder of the type /views/users where I can change the new.html.erb and edit.html.erb to add new fields?
Does anyone know where these files would be located?
run
rails generate devise:views
that will place the view files in the views directory
From the docs:
Since Devise is an
engine, all its views are packaged
inside the gem. These views will help
you get started, but after sometime
you may want to change them. If this
is the case, you just need to invoke
the following generator, and it will
copy all views to your application: rails generate devise:views
You should run rails generate devise:views task to generate views