2011-07-26 6 views
0

user_controller에서 2 개의 인수를 취하고 몇 가지 쿼리와 계산을 수행하고 결과를 배열로 반환하는 함수를 만들려고합니다. 이 파일을 도우미 파일로 설정해야합니까? 그리고 어떻게 결과를 반환 할 것인가? (나는 이것에 아주 새로운 것이다.) 모든 그 계산이 완전히 템플릿에 관련하지 않는 한 어떤 도움 :)루비 레일에 루비 기능?

답변

0

에 대한

덕분에 (HTML을, JS) 당신은 어떤 종류의 도우미에 그 물건을 넣어해서는 안됩니다. 앱을 테스트하기가 어려울 것입니다.

귀하의 옵션 : ~/모델 1) 액티브없이 모델을 작성 (MyCalculations.rb 또는 ~/lib에) 2) 확장을 만들고 (샘플 코드, 현실적이지 기존 모델

예에 포함 ~/lib 디렉토리/모델/가져 오기/csv_ext.rb

module Models 
    module Import 
     module CsvExt 
      extend ActiveSupport::Concern 

      included do 

      end 

      module ClassMethods 
       #static 
       def load_from_csv(csv) 
        # code comes here 
       end 


      end 
      end 
     end 

end 
: ~/모델

class Calculator 

    attr_accessor :amount, :parcs, :interest, :change 

    #... lots of code 

    def initialize(amount, parcs, interest) 
     # do stuff 
     calculate 
    end 

    def self.calculate!(amount, parcs, interest) 
     Calculator.new(amount, parcs, interest) 
    end 
end 

확장에) calculator.rb 0

다음 모델에 추가하십시오 :

include Models::Import::CsvExt