可能很差的导轨设计 - 我需要一些建议来使定制的控制器更像CRUD

时间:2014-04-15 15:22:32

标签: ruby-on-rails ruby

我一般在rails和web开发方面经验不足。我认为我所拥有的是来自我所研究的糟糕设计。我不认为我使用rails方式这样做,因为这是一个上传文件功能,我怎么能像熟悉的CRUD风格一样。我创建了一个名为FileUploadController的自定义控制器。我还有一个名为FileProcessorService的自定义类 用户将导航到具有多部分表单按钮的upload页面,以选择并上载文件。 import操作是单击多部分表单上的提交按钮时调用的内容。

<div class="row">

<h1>Upload File</h1>
    <%= form_tag({action: :import}, multipart: true) do %>
<%= file_field_tag :file %>
<%= submit_tag("Upload and Tabulate", :class => 'button', id: 'upload_button') %>
<% end %>

这可以归化吗?如何使这个设计像熟悉的CRUD一样控制器?由于这是上传文件功能,对我来说如何做到这一点并不是很明显。提前谢谢。

   class FileUploadController < ApplicationController

       def index
       end

       def import
         initialize_processor(params[:file])

         if (@file_sample != nil || @index_name != nil) then
           render 'index'
         end
       end

       def upload

       end

       def initialize_processor(file_in)

         File.open(Rails.root.join('public', 'uploads', file_in.original_filename), 'wb') do |file|
          file.write(file_in.read)
         end


        @file_processor = FileProcessorService.new(file_in)
        @file_sample = @file_processor.present_data_sample()
        @index_name = @file_processor.load_index()
      end
end

0 个答案:

没有答案