Rails 5 앱에서 FriendlyId & Ancestry Gem을 사용하고 있습니다. 내 기본 서비스에 대한 사일로 마케팅 페이지를 만들고 별도의 상위 경로에있는 중복 슬러그를 만들어야합니다. 참조 용으로 초기 시드 파일을 아래에 포함 시켰습니다. 당신이 볼 수 있듯이FriendlyId 및 Ancestry Gem in Rails에서 중복 슬러그 허용 5
, 내 루트 경로는 다음과 같습니다
www.mysite.com
www.mysite.com/events
www.mysite.com/events/san-diego
www.mysite.com/events/orange-county
www.mysite.com/events/los-angeles
www.mysite.com/events/riverside
** 여기에 내가 필요로 중복 슬러그 ** 슬러그 중복이 있지만 당신이 볼 수 있듯이
www.mysite.com/events/san-diego/birthday-parties
www.mysite.com/events/orange-county/birthday-parties
www.mysite.com/events/los-angeles/birthday-parties
www.mysite.com/events/riverside/birthday-parties
...
, 그들은 다른 부모 경로 떨어져 앉는다. 상위 슬래그를 기반으로 슬러그의 유효성을 검사하여 중복 슬러그를 만들 수있는 방법은 무엇입니까?
** dB/seeds.rb **
home = Page.create(title: 'Home')
# home/events
events = Page.create(title: 'Events', parent: home)
# home/events/cityPage
san_diego = Page.create(title: 'San Diego', parent: events)
orange_county = Page.create(title: 'Orange County', parent: events)
los_angeles = Page.create(title: 'Los Angeles', parent: events)
riverside = Page.create(title: 'Riverside', parent: events)
# home/events/san-diego/eventPage
Page.create(title: 'Birthday Parties', parent: san_diego)
Page.create(title: 'School Events', parent: san_diego)
Page.create(title: 'Church Events', parent: san_diego)
Page.create(title: 'Corporate Events', parent: san_diego)
Page.create(title: 'Social Events', parent: san_diego)
Page.create(title: 'Community Events', parent: san_diego)
# home/events/orange-county/eventPage
Page.create(title: 'Birthday Parties', parent: orange_county)
Page.create(title: 'School Events', parent: orange_county)
Page.create(title: 'Church Events', parent: orange_county)
Page.create(title: 'Corporate Events', parent: orange_county)
Page.create(title: 'Social Events', parent: orange_county)
Page.create(title: 'Community Events', parent: orange_county)
# home/events/los-angeles/eventPage
Page.create(title: 'Birthday Parties', parent: los_angeles)
Page.create(title: 'School Events', parent: los_angeles)
Page.create(title: 'Church Events', parent: los_angeles)
Page.create(title: 'Corporate Events', parent: los_angeles)
Page.create(title: 'Social Events', parent: los_angeles)
Page.create(title: 'Community Events', parent: los_angeles)
# home/events/riverside/eventPage
Page.create(title: 'Birthday Parties', parent: riverside)
Page.create(title: 'School Events', parent: riverside)
Page.create(title: 'Church Events', parent: riverside)
Page.create(title: 'Corporate Events', parent: riverside)
Page.create(title: 'Social Events', parent: riverside)
Page.create(title: 'Community Events', parent: riverside)
** 중복 슬러그에 추가 된 해시 **을 보여주는 데이터베이스의 스크린 샷