Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # In new.html.erb
- <%= file_field_tag 'upload[file]' %>
- # In controller#create
- @text = params[:upload][:file]
- <%= form_tag 'controller/method_name', :multipart => true do %>
- <label for="file">Upload text File</label> <%= file_field_tag "file" %>
- <%= submit_tag %>
- <% end %>
- uploaded_file = params[:file]
- file_content = uploaded_file.read
- puts "file_content"
- resources :contacts do
- collection do
- get 'import/new', to: :new_import # import_new_contacts_path
- post :import, on: :collection # import_contacts_path
- end
- end
- <%= form_for @contacts, url: import_contacts_path, html: { multipart: true } do |f| %>
- <%= f.file_field :import_file %>
- <% end %>
- def new_import
- end
- def import
- begin
- Contact.import( params[:contacts][:import_file] )
- flash[:success] = "<strong>Contacts Imported!</strong>"
- redirect_to contacts_path
- rescue => exception
- flash[:error] = "There was a problem importing that contacts file.<br>
- <strong>#{exception.message}</strong><br>"
- redirect_to import_new_contacts_path
- end
- end
- def import import_file
- File.foreach( import_file.path ).with_index do |line, index|
- # Process each line.
- # For any errors just raise an error with a message like this:
- # raise "There is a duplicate in row #{index + 1}."
- # And your controller will redirect the user and show a flash message.
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement