how to permit an array with strong parameters

This https://github.com/rails/strong_parameters seems like the relevant section of the docs: The permitted scalar types are String, Symbol, NilClass, Numeric, TrueClass, FalseClass, Date, Time, DateTime, StringIO, IO, ActionDispatch::Http::UploadedFile and Rack::Test::UploadedFile. To declare that the value in params must be an array of permitted scalar values map the key to an empty array: params.permit(:id => []) In … Read more

Rails raw SQL example

You can do this: sql = “Select * from … your sql query here” records_array = ActiveRecord::Base.connection.execute(sql) records_array would then be the result of your sql query in an array which you can iterate through.

Float vs Decimal in ActiveRecord

I remember my CompSci professor saying never to use floats for currency. The reason for that is how the IEEE specification defines floats in binary format. Basically, it stores sign, fraction and exponent to represent a Float. It’s like a scientific notation for binary (something like +1.43*10^2). Because of that, it is impossible to store … Read more

Rails Root directory path?

In Rails 3 and newer: Rails.root which returns a Pathname object. If you want a string you have to add .to_s. If you want another path in your Rails app, you can use join like this: Rails.root.join(‘app’, ‘assets’, ‘images’, ‘logo.png’) In Rails 2 you can use the RAILS_ROOT constant, which is a string.