2010-05-02 4 views

답변

0

당신은 내가 모두 레일 및 유래에 꽤 멍청한 놈이야,하지만 난에서 호출 할 수있는, 단순히 applcation_helper.rb에 도우미를 만든 그것을 바로 :)

을 얻으려고 상상할 수 있듯이 조회가 필요할 때마다 이것이 그 길로가는 길이라고 생각합니까, 아니면 그보다 더 좋은 방법이 있습니까? 어쨌든

, 나는 여전히 특정 클래스/모델 : 그는`ActiveSupport :: CoreExtensions을 무시하고 싶어

0

to_sentence을 해당 모델에서 정의 할 수 있습니다.

class Model < ActiveRecord::Base 

    def to_sentence 

    end 

end 

당신이 AR에서 쿼리의 결과를 조작하고, 배열의 각 요소는 모델 클래스의 인스턴스이기 때문에 자동으로 모든 메서드와 속성을해야합니다. 배열 자체에는 내장 Array 및 Enumerable 클래스의 모든 메서드 (및 AR의 몇 가지 추가 기능)가 있습니다. 이 클래스들을 재정의하거나 확장 할 수 있습니다.

+0

:: 배열 :: 변환 #을 포함하는 배열에 대한 배열 메소드를 오버라이드 (override) 할 수있는 방법이 있는지 알고 싶소 to_sentence'. 그의 ActiveRecord 모델에'to_sentence'를 추가해도 그것을 달성 할 수는 없습니다. –

+0

Toby, 답변 해 주셔서 감사합니다.하지만 실제로 사례를 제시해야합니다. 내가 달성하고자하는 일은 to_sentence를 사용할 때 항상 쉼표로 나열된 CMS의 태그를 사용하여 기본 동작을 재정의하는 것입니다 (마지막 항목의 경우 "및"사용). 단일 모델의 동작을 재정의하는 방법을 알고 있습니다. 태그의 "to_s"를 재정 의하여 # 태그가 아닌 이름을 얻습니다.)),하지만 어떻게 해야할지 모르겠습니다. 태그의 배열에 관한 그런 것, 나는 단지 태그 만 가지고 싶습니다. – amencarini

+1

@mirithil - 그럴 경우 왜 단지'myArray.join (',')'을하지 않습니까? –

관련 문제