2016-09-17 4 views
1

Я пытаюсь сделать свой собственный слизняка, используя FriendlyId камень, как:Rails Friendly_id: Slug не генерируется должным образом

extend FriendlyId 
friendly_id :slug_candidates, :use => [:slugged, :finders] 

def slug_candidates 
    id = rand(100..200) 
    x = ... 
    y = ... 
    return "#{x}-#{y}-#{id}" 
end 

Перед добавлением столбца слизняка, когда я проверить его в rails console с .friendly_id, является корректно отображает пул в формате xy-id. Проблема в том, что когда я добавляю столбец slug и пытаюсь создать новые экземпляры, только последняя часть сохраняется (только случайное число) в качестве пули! В пули нет значений x и y. Что здесь не так и как я могу это решить?

ответ

0

вы можете попробовать сделать что-то вроде этого:

def slug_candidates 
    id = rand(100..200) 
    x = ... 
    y = ... 
    [ "#{x}-#{y}-#{id}" ] 
end 

def should_generate_new_friendly_id? 
    true 
end 
Смежные вопросы