How to turn .txt files loaded with paperclip into source?

I added a document column to my Post model, so now I can add txt files to it:

post.rb:

 has_attached_file :document validates_attachment_content_type :document, :content_type => 'text/plain' 

Prefixes:

  #<Post id: 92, content: "document upload test", user_id: 1, created_at: "2013-01-02 10:23:13", updated_at: "2013-01-02 10:23:13", title: "document upload test", document_file_name: "test.txt", document_content_type: "text/plain", document_file_size: 15, document_updated_at: "2013-01-02 10:23:13"> 

So, now I would like to turn the contents inside test.txt into the source text. So I can do something like this in my controller:

@post.content = [TEXT INSIDE test.txt]

Any suggestions?

+6
source share
1 answer

Using the before_save callback , find the path, open the file, and call File::read in the file that opens.

 class Post before_save :contents_of_file_into_body private def contents_of_file_into_body path = document.queued_for_write[:original].path content = File.open(path).read end end 
+5
source

All Articles