On Jun 21, 2012, at 3:34 AM, Avantec Van wrote: > Hi, > I'm creating an file uploading application. I'm using paperclip to > upload files.
I just did this, a couple weeks ago. > > my upload path is > "http://localhost:3000/system/uploads/uploaded_files/000/000/064/original/Cell%20phone%20ringing.mp4" > when I'm clicking on this I can see the file. > > But I want to encode this URL something like > http://localhost:3000/UitMvriwuSc3VLy3IyU9MKYbSqSnxaZk5qcX6BgYGEGx > > and when I click on this link, it should decode the URL & I should be > able to see the actual file in browser. Make a new column in your uploaded_files model called 'slug' or whatever you like (and index it, too!). Either alter your show method or make a new get_file method in your controller, which should look like this: @uploaded_file = UploadedFile.find_by_slug(params[:slug]) In your routes.rb, add a line like this (fairly low in the list, so it doesn't clobber the other routes) match '/:slug', :to => 'uploaded_files#show' That should do the trick. Here's a way to make a very terse code for your URL: def set_slug code = Array.new(7) { (('A'..'Z').to_a + (0..9).to_a)[rand(36)] }.join.to_s if UploadedFile.find_by_slug(code) return self.set_slug() else self.slug = code end end Call it in an after_create. Walter > > > Anybody can help me. > > Thanks in advance. > Avantec > > -- > Posted via http://www.ruby-forum.com/. > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Talk" group. > To post to this group, send email to rubyonrails-talk@googlegroups.com. > To unsubscribe from this group, send email to > rubyonrails-talk+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/rubyonrails-talk?hl=en. > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk@googlegroups.com. To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.