Don't use Active Record but create an SQL statement so the data insert is done in a single statement:
ruby
inserts = []
loop around your data do |line|
inserts.push("('#{Time.now}'::timestamp, \
'#{Time.now}'::timestamp,'#{line[0]}','#{line[1]}', \
#{current_user.id})")
end
sql_query = "INSERT INTO table_name (created_at,updated_at,attribute1, attribute2,user_id,) VALUES #{inserts.join(", ")}"ActiveRecord::Base.connection.execute sql_query
This will take each array element and joins them with a comma to have a long single sql statement which is then executed. Make sure you don't have any single quotes in your incoming data. When using postgres you can replace them with two single quotes '' to allow them to be used as attribute values.
I am using will_paginate in a search page. After restricting the number of records according to the search form fields I am calling paginate on them.
When I export to CSV I only export the current number of records on the page as defined in :per_page. How do I trick my controller to export all records when export to CSV?
Thanks for the screencast. We have been using refinerycms extensively and really like it a lot. Now that the new version is out it seems time to check it out.
Thanks as always Ryan for a great screencast. Are there any know gem incompatibilities with the new rails 3.1? E.g. We use refinerycms a lot and there it seems it is not compatiable out of the box yet.
thanks for the great episode. After watching it it was keen trying it myself and downloaded the complete source code. After extraction I installed the bundle, did a "rake db:migrate" and tested the app in the browser, all worked fine.
When following the coding using the auth-before tree as a start I soon got this error:
Failure/Error: let(:user) { Factory(:user) }
ActiveRecord::StatementInvalid:
Could not find table 'users'
I checked in the auth-after (bundle, rake db:migrate, guard) and I do get the same error. So there must be something wrong with my testing environment as the regular development environment find the user table in the browser. I am on Ubuntu Linux, I installed/updated libnotify, rb-inotify, and childprocess as guard did complain about not finding them or them being out-dated...
Hi Ken,
you could use the above mentioned compass for that. Compass nicely integrates with rails but you can use it without it as well. You will need to run a watch process from the terminal though to monitor changes to your sass/scss files that then get compiled into css-stylesheets on the fly. Find out more about it here: http://compass-style.org/install
It is great to see SASS being more integrated into rails 3.1. We have been using sass for all our projects for over a year now. The variables and mixins are such a time saver and clean up the resulting CSS code considerably. We prefer to use compass and sass files though as compass gives up great automated mixins and SASS is as nice as HAML is for views. But that is personal preference I guess...
Don't use Active Record but create an SQL statement so the data insert is done in a single statement:
This will take each array element and joins them with a comma to have a long single sql statement which is then executed. Make sure you don't have any single quotes in your incoming data. When using postgres you can replace them with two single quotes '' to allow them to be used as attribute values.
I am using will_paginate in a search page. After restricting the number of records according to the search form fields I am calling paginate on them.
When I export to CSV I only export the current number of records on the page as defined in :per_page. How do I trick my controller to export all records when export to CSV?
<%= link_to "Excel", user_contacts_path(format: 'xls'), :letter => 'c' %>
should do it...
Thanks for the screencast. We have been using refinerycms extensively and really like it a lot. Now that the new version is out it seems time to check it out.
Thanks as always Ryan for a great screencast. Are there any know gem incompatibilities with the new rails 3.1? E.g. We use refinerycms a lot and there it seems it is not compatiable out of the box yet.
Cheers Juergen
Hi Ryan,
thanks for the great episode. After watching it it was keen trying it myself and downloaded the complete source code. After extraction I installed the bundle, did a "rake db:migrate" and tested the app in the browser, all worked fine.
When following the coding using the auth-before tree as a start I soon got this error:
I checked in the auth-after (bundle, rake db:migrate, guard) and I do get the same error. So there must be something wrong with my testing environment as the regular development environment find the user table in the browser. I am on Ubuntu Linux, I installed/updated libnotify, rb-inotify, and childprocess as guard did complain about not finding them or them being out-dated...
Any help would be appreciated.
Cheers Juergen
SOLVED:
rake db:test:prepare
Should have guessed... sigh
Hi Ken,
you could use the above mentioned compass for that. Compass nicely integrates with rails but you can use it without it as well. You will need to run a watch process from the terminal though to monitor changes to your sass/scss files that then get compiled into css-stylesheets on the fly. Find out more about it here:
http://compass-style.org/install
Cheers J.
Thanks for the railscasts!
It is great to see SASS being more integrated into rails 3.1. We have been using sass for all our projects for over a year now. The variables and mixins are such a time saver and clean up the resulting CSS code considerably. We prefer to use compass and sass files though as compass gives up great automated mixins and SASS is as nice as HAML is for views. But that is personal preference I guess...
Like the new design and I am very much looking forward to rails 3.1 as well as your episodes to let us know what it can do!
Very nice screencast! Looks like an elegant way to code an advanced search for a site.