I am trying to use RailsAdmin and am getting an Uninitialized Constant TableNameX error. I did indeed misspell TableNameX originally.
I figured that if I went and changed all the mis-spelled spots the problem would resolve itself. It hasn't, so I seem to be missing a spot--but my searches within Eclipse are not turning anything up!
Which folder/folder would RailsAdmin be reading from?
What does your trace look like?
Also have you looked into /config/initializers/rails_admin.rb to see if your TableNameX is there and you simply forgot to change it? :)
P.S: And don't forget to restart the server, initializers only run once at the server bootup.
Related
I upgraded to Rails 4 and now when some changes are made to the code, or when I do a reload! in rails console, I will get an ArgumentError: A copy of ApplicationHelper has been removed from the module tree but is still active! error.
I'm not the only one with this problem but still cant find existing solutions that work yet.
I've never encountered that problem before. I'm using Rails4 as well.
I think you have to call your controller(which is shown in the ArgumentError) explicitly in your dependent controllers.
Can you try adding this line on top inside the class?
require "_controller"
Then try rails server -e production
See if this helps. Sorry I wish I could give you more detailed solution.
If all else fails, rollback might be an option to consider.
I have an app that I am working on, and there appear to be two key problems: due to a problem undetectable by me, the webapp I am working on returns the error "uninitialized constant Users" and the error "uninitiallized constant SubmitController." The code for the webapp is here. I have tried renaming multiple, possibly violating variables, and attempted to rid the app of the errors. However, I have not been sucessful. The code where the errors most likely originate are from app/views/users/show.html.erb, app/views/users/show.html.erb, app/controllers/user/submit.html.erb, app.controllers/user/submit_controller.rb, app/models/Submit.rb, app/models/user.rb, app/controllers/users_controller.rb, config/routes.rb.
Thanks in advance.
You have error because you don't have SubmitsContoller. Also you need to move app/controller/users/submit.erb to views folder. And one more rename file Submit.rb to submit.rb.
And to make it works create submit_controller.rb in controller folder.
I've notice that when I include password hashing with require "digest/sha1" on top of my model, every time I make some change in my app, I have to restart server to see changes.
That is kind of annoying and it is slowing down development a lot, especially for beginner like me.
I've seen somewhere that with require_dependency "digest/sha1" it should work, but it is not working for me (saying no file error).
I'm not sure even where to put require_dependency as I haven't found any example.
There should be some way to make it work, as it is quite common problem, maybe I was just looking to wrong places.
Thanks
EDIT :
I've came to conclusion that error comes when my Ubuntu machine goes to sleep. After wake up, local server (tried thin and WEBrick) give that error.
EDIT :
It has nothing to do with Ubuntu sleep. I had a function named hash that was giving errors every time, complaining that it got wrong number of arguments, but that function was never called.
So, I've renamed it to encrypt and now it is working, but I'm not 100% sure that it is solution, I have to test is more.
If it will be ok, that would be a strange bug, I will post an answer.
In development mode, by default, anything in app/ or config/routes.rb is reloaded between requests. If this is not happening for you, it's probably not caused by the require. It's more likely that you've turned off reloading inadvertently.
I've used digest/sha1 in many projects before and have never had this problem, usually including it in the User model where it's used.
Can you replicate this problem in a brand new Rails project? Does the problem go away if you remove that line? If so that is very odd.
If you remove require "digest/sha1" all works fine?
Anyway check for config.cache_classes = false in config/environments/development.rb
Trying my luck with the vote_fu rails plugin. The functionality looks like exactly what I need for a project of mine, but I have hit a roadblock. I have followed the github readme to the letter, installing it as a plugin.
I have put acts_as_voteable on my "Event" model and acts_as_voter on my User model.
In the console, when I try:
>> event.votes
or
>> user.votes
it successfully returns an empty array.
but when I try to do the following:
user.vote_for(event)
I get
"NoMethodError: undefined method `user_id' for #<Vote:0x7f5ed4355540>"
Any ideas? I'm probably just missing something obvious, but maybe something is missing from the plugin's readme.
Thanks.
[Update]
I created a blank application and the plugin works fine, so I think that this problem might be being caused by the use of the "desert" plugin, as my User class is split over two files. If I find the answer, I'll post it so that in the off chance someone else runs into this it may be some help.
Cheers.
Ok, I haven't found a definitive reason why this problem occurred, but I do have strong suspicions that it is due to the use of the "desert" plugin, as my User class is split over two files (the project is using the CommunityEngine plugin as a base),
Anyhow, I found a work around (something I should have tried before posting here). Instead of installing vote_fu as a plugin, I installed it as a gem. And now vote_fu seems to be humming along nicely.
So let that be a lesson to you all!
:-P
I'm having a weird problem, where tagging works fine on my development machine, but when I deploy to the production server, I get this error in the log:
ActionView::TemplateError (undefined method `tags' for #<Person:0x98bb9d4>) on line...
There is an entry in the production.log file that states that has_many_polymorphs is loaded, so it's not like the plugin isn't available on the production machine.
My Google-fu has failed me trying to find the answer, so if anyone knows what could be wrong it would be greatly appreciated!
Edit: I should have mentioned that on both production and development I'm using the same database. I downloaded the production one, and used it on the development machine and it works fine.
cap deploy:migrations
I've seen similar problems to this in which the polymorphic type field is not getting correctly filled in, or when there was some existing data prior to the polymorphic type tag getting added. Is person a subclass? does the _type field contain any null values on the polymorphs table?
Just stabbing in the dark here, but has_many_polymorphs doesn't natively add tagging functionality to your models. Instead, you use a generator to create a tagging extensions module that goes into lib/tagging_extensions.rb. The module file has helper methods that add tagging functions, built on top of the has_many_polymorphs base functionality.
So, is it possible that you have the plug-in installed, but not the tagging extensions file?
I spent some time with a consultant tracking this down, and eventually we discovered that for reasons unknown, the Tagging stuff just wasn't being loaded.
By adding a single line of code, just three letters, to the end of environment.rb, it was resolved. I commented it so that we'd never forget wtf was going on:
# Magic begins here.
# We need to force Rails to load the Tag record, or
# has_many_polymorphs doesn't work properly. I don't know
# if there's a better fix, but this one seems reasonable. :-/
Tag
That was it. I'm sure there's an elegant and proper solution to this, but this works. Weird.
I hope this helps someone out there.