2014-12-22 3 views
1

여러 속성을 가진 슬러그를 생성해야합니다. 예를 들어, 모든 레코드에 titleid이 모두 필요합니다 (중복 제목이있는 레코드뿐만 아니라). 그래서 다음과 같이 보일 것입니다 : hello-world-8943. 어떻게해야합니까? 예를 들어 임의의 문자열을 생성Rails friendly_id 슬러그에 여러 속성을 사용하는 방법은 무엇입니까?

그건 : 모델

def to_param 
    "#{title.parameterize}-#{id}" 
end 

답변

1

docs에 Accoriding, 당신은 당신의 자신의 slug 구조를 정의 할 수 있습니다 : 그것은 완벽하게 작동

class MyModel < ActiveRecord::Base 

    friendly_id :uniqueslug, use: :slugged 

    def uniqueslug 
    "#{title}-#{id}" 
    end 

end 
+0

! 첫 번째 행에 대한 편집 :'friendly_id : uniqueslug, use : : slugged', 슬러그 사용 – THpubs

+1

@EApubs 님이 답변을 업데이트했습니다. 기쁘게 생각합니다 –

+0

당신을 환영합니다 :-) – THpubs

0

넣어 당신은 당신의 자신의 슬러그를 통과해야합니다. 다음과 같이

extend FriendlyId 
    friendly_id :random_slug, use: [:slugged, :finders] 

    def random_slug 
    self.slug = SecureRandom.hex(5) 
    end 
0

에서