Chris Oliver

Joined

292,890 Experience
93 Lessons Completed
295 Questions Solved

Activity

The example here shows it being used in a before_filter but I'm guessing you aren't calling it anywhere in your app? Are there other Devise related gems that might be adding it in for you?

Do you have a method called require_no_authentication in your app anywhere?

Posted in Passenger Spinning down in Production

I wonder how long it takes for Passenger to sleep an app. I haven't noticed it with things like Feedforward.io that I run but rarely use. Maybe there is other traffic to it that I didn't realize or something.

You might be able to set passenger_pool_idle_time to 0 and see if that disables the idle time. https://www.phusionpassenger.com/documentation/Users%20guide%20Nginx.html#PassengerPoolIdleTime

Posted in Passenger Spinning down in Production

Good tip! This is especially useful for those people who are running a Heroku app on the free tier that gets hung for quite a while if you're not using it.

Only other thing I could think of is setting up something like Pingdom or a similar app that would make the HTTP requests for you. They'd give you the side benefit of alerting you if things go down.

Posted in Liking Posts Discussion

Haha! It's possible there was something accidentally getting cached, but it's hard to say.

Fake it.

Use data tags in your HTML and when one of the options are clicked, Javascript fills out the hidden fields in the form using the data tags on the element that was clicked. Display the data however you want. If you want radio buttons, use it for visual reasons only.

This is a non-standard form you're trying to build. The other, simpler way is to make a set of radio buttons that submit only the factual_id. You can then check the radio button you want, and then have the create action actually go look up the record and save it to the DB. This is almost always my preferred method of doing things. Then this way you can simply display the search results in the HTML however you like with p tags or whatever, you just won't submit that data in this case. You'll simply submit the factual_id.

Posted in Deploy Ubuntu 14.04 Trusty Tahr Discussion

Definitely a pain in the butt! I think my personal suggestion for most people is to use Rails' secrets.yml and symlink that on deploy just like database.yml. It works just like environment variables more or less and is builtin to Rails.

The SyntaxHighlightFilter depends upon github-linguist that depends upon pygments.rb so behind the scenes you'll be using the same tools. :)

Posted in Rails 4.0 with MongoDB and Mongoid Discussion

That's up to you to make sure you've got a project that's worth using with it. There are lots of good articles on it that you can check out:

http://java.dzone.com/artic...
http://docs.mongodb.org/eco...
http://www.sarahmei.com/blo...

Posted in rbenv: bundle: command not found

I'm not really sure how much faster (if any) it is. I do think it's probably going to be faster and it used to be in the tutorial but I'm not sure when it went missing.

I need to experiment with a "submit an improvement" piece to the guides so that people like you can make improvements and I can quickly review the diff and merge them in.

Posted in Show each users each post.

So you'll need a join table between Movies and Users. Something like UserMovie is a standard naming scheme for that. You could also give them a name like Favorite.

In essence you'll do this:

class User < ActiveRecord::Base
  has_many :user_movies
  has_many :movies, through: :user_movies
end

class UserMovie < ActiveRecord::Base
  belongs_to :movie
  belongs_to :user
end

class Movie < ActiveRecord::Base
  has_many :user_movies
  has_many :users, through: :user_movies
end

This lets you access @user.movies to get their movies and you can also get a list of a movie's users (people who favorited it for example) by doing @movie.users

You will need some mechanism to create the join table records, but if you check out the screencast I did on hearts/favoriting/liking, that's pretty much exactly what you'll be doing for that.

It depends on the type of JOIN you do. There's a bunch of different ways to do it, but take a look at this. It's one of the better things out there to explain the different JOINs. http://blog.codinghorror.co...

Posted in Sending Data Between Controllers And Views | GoRails

3 months later isn't bad on the internet these days. ;-)

Posted in Setup MacOS 10.9 Mavericks Discussion

Always something! It looks like you've got something configured to point to that directory so maybe you set an environment variable while following one of those posts. That's definitely possible. You might need to just unset some environment variables then.

Posted in Setup MacOS 10.9 Mavericks Discussion

One thing to keep in mind, at least with OSX, if you can install it with Homebrew, definitely do that. It's easily the best way to install things and you rarely will have trouble with it.

Posted in Setup MacOS 10.9 Mavericks Discussion

You should just be able to do bundle install without any options and it should work.

Now that I'm looking at your logs again, it looks like you installed Postgres.app so it isn't looking at homebrew's Postgres. I'm sure that's the problem. One thing you can try is to uninstall Postgres.app and see if it gets resolved.

If you want to keep with that Postgres.app, there is lots of people talking about it with some instructinos that probably work: http://stackoverflow.com/qu...

Posted in Capistrano deploy removes tables from database.

So every time you deploy with capistrano, it creates a new folder for the "release". This means all the files that were created in the previous directory (like your sqlite database for example) will be in that old folder. Your restart will happen and it will then serve up only from the new directory. Your database still exists, but it is in a different folder that isn't accessible anymore!

This is why you want to use a shared database of some sort in production. You can move this production.sqlite3 file to the shared folder and then put it in your linked_files option just like you did with database.yml and secrets.yml. This way you'll only have one copy of the sqlite3 database file and it will get linked into the app each time. Same goes for the database.yml and secrets.yml files. You only have one, and it creates a link to it on deploy so your Rails app can access it.

Posted in could not connect to database postgres

It sounds like postgres isn't running. There is a ton of information on managing it from here https://help.ubuntu.com/community/PostgreSQL

Posted in Setup MacOS 10.9 Mavericks Discussion

I think you may need to install postgres because it can't find libpq in your logs there: Can't find the PostgreSQL client library (libpq)

brew install postgresql

Also with this set up, you should never have to use the sudo command. If you use it, you're likely to cause permissions problems where files are owned by root and not your user. It causes a chain effect where everything starts to require sudo which is bad. Basically don't ever run sudo and if you run into problems, there's a different problem which can be fixed without sudo. :)

Posted in Setup MacOS 10.9 Mavericks Discussion

You need to run 'bundle install' as it mentioned there. You set up a new Rails app with a different database. That means you've got a new database adapter gem to use but haven't installed it yet. bundle install will do that for you.