While upgrading an old project to Rails 2.0.2 (and having trouble getting the will_paginate plugin to install), I discovered that there is a will_paginate gem:
http://mislav.caboo.se/rails/will_paginate-love/
Railscasts - will_paginate
Tech Tidbits - Ruby, Ruby On Rails, Merb, .Net, Javascript, jQuery, Ajax, CSS...and other random bits and pieces.
Saturday, April 26, 2008
Thursday, April 24, 2008
Rails - ActionController::InvalidAuthenticityToken
ActionController::InvalidAuthenticityToken in User#login
Showing user/login.html.erb where line #2 raised:
No :secret given to the #protect_from_forgery call.
Set that or use a session store capable of generating its
own keys (Cookie Session Store).
This happened after I switched from using the file system to a database for storing sessions (after uncommenting the line "
config.action_controller.session_store = :active_record_store" in config/environment.rb).Once you switch to database store, you'll need to comment the "
protect_from_forgery" line in app/controllers/application.rb
# See ActionController::RequestForgeryProtection for details
# Uncomment the :secret if you're not using the cookie session store
#protect_from_forgery # :secret => 'b3e36f40312f075ea2697fb85180e312'
Rails 2.0.2 - setup with functional tests
If you want to use
setup with functional tests in Rails 2.0.2, you'll need to rename the setup method to setup_with_fixtures and call super before running your setup code:
def setup_with_fixtures
super
# Set up code here
end
Saturday, March 29, 2008
Sunday, March 23, 2008
Ruby on Rails - Using External Asset Hosts
Rails uses the "public" directory on the current host as the default location for static assets (images, CSS, Javascript, etc). Setting up your Rails app to use an external assets server is as simple as adding a single line to a configuration file.
Add the following line to your config/environment.rb file:
It's also possible to set a single environment to use an external asset host:
Add the following line to config/environments/production.rb (the most likely spot - this line should already be in this file, but commented out):
Now this line in my layout
will translate to http://assets.yourdomain.com/stylesheets/scaffold/base.css
Additional information on setting up multiple asset hosts can be found at:
http://api.rubyonrails.com/classes/ActionView/Helpers/AssetTagHelper.html
Add the following line to your config/environment.rb file:
ActionController::Base.asset_host = 'http://assets.yourdomain.com'
It's also possible to set a single environment to use an external asset host:
Add the following line to config/environments/production.rb (the most likely spot - this line should already be in this file, but commented out):
config.action_controller.asset_host = 'http://assets.yourdomain.com'
Now this line in my layout
<%= stylesheet_link_tag 'scaffold/base' %>
will translate to http://assets.yourdomain.com/stylesheets/scaffold/base.css
Additional information on setting up multiple asset hosts can be found at:
http://api.rubyonrails.com/classes/ActionView/Helpers/AssetTagHelper.html
Wednesday, March 12, 2008
Ruby Gem - Highline
I was looking for a way to prompt a user for input on the console and ran across the RubyGem HighLine. It does a lot more than this, but here's how to capture STDIN from the console:
Here's the output on the console:
Get it here:
HighLine
or simply install the gem the normal way:
$ sudo gem install highline
#!/usr/local/bin/ruby
require 'rubygems'
require 'highline/import'
username = ask("Enter your username: ") { |q| q.echo = true }
password = ask("Enter your password: ") { |q| q.echo = "*" }
Here's the output on the console:
$ ruby highline.rb
Enter your username: doug
Enter your password: ******
Get it here:
HighLine
or simply install the gem the normal way:
$ sudo gem install highline
Subscribe to:
Posts (Atom)
About Me
- Doug Sparling
- Developer (Ruby on Rails, iOS), musician/composer, Buddhist, HSP, Vegan, Aspie.
Labels
- .NET (8)
- accordion (1)
- ActiveRecord (1)
- ajax (2)
- APT (1)
- apt-get (1)
- ASP (1)
- ASP.NET .NET (5)
- Audio (1)
- aws (1)
- Bash (1)
- bdd (1)
- C# (1)
- cache_fu (1)
- caching (1)
- DocBook (1)
- DOM (1)
- Eclipse (1)
- Excel (1)
- Firefox (1)
- gem (5)
- Gems (5)
- git (1)
- GridView (2)
- Hibernate (1)
- iBATIS (1)
- Java (9)
- javascript (9)
- javascript css (1)
- jQuery (4)
- jsspec (1)
- mdb2 (2)
- Merb (2)
- mongrel (2)
- mp3 (2)
- Music (2)
- MySQL (2)
- nginx (1)
- openssl (1)
- osx (3)
- pdocast (1)
- pear (2)
- Perl (7)
- php (5)
- plugin (2)
- podcast (1)
- prototype (1)
- REST (1)
- RMagick MacOSX (1)
- rspec (1)
- ruby (14)
- ruby on rails (21)
- RubyGems Merb (1)
- s3 (1)
- screencasts (1)
- scriptaculous (1)
- scriptrunner ruby rails erlang (1)
- Sortable (1)
- subversion (1)
- testing (1)
- testing erlang tsung (1)
- tomcat (1)
- ubuntu (2)
- WebSphere (1)
- will_paginate (1)