У меня есть модель ActivityType, которая создает динамическую страницу после ее создания с помощью слизня, равного slug ActivityType.FriendlyID - Назначение пули перед ее сохранением
Если страница уже существует с этой ошибкой, она вызывает ошибку проверки, поэтому я пытаюсь изменить пул ActivityType перед тем, как он будет сохранен, если предположить, что страница Dynamic уже существует с этим slug.
Я написал следующий код:
def check_and_change_slug
n = 1
slug = title
while DynamicPage.exists?(slug: slug)
slug = title + "-#{n}"
n + 1
end
end
Мой вопрос, если я выполняю этот код перед сохранением записи, будет Дружественные ID попытки создать новую слизняка, или просто пойти с одним I 'назначено вручную?
Я просмотрел документацию и ТАК, но не могу найти ничего.
Заранее спасибо.
Спасибо за ответ - жаль, что я должен заявил в своем вступительном вопрос - может быть динамической страницы уже существующего, даже если пробка не имеет был использован раньше, поэтому мне нужно выполнить ручную проверку и присвоение - ваш код, безусловно, имеет смысл, но я не думаю, что можно использовать здесь – Mark
@Mark Я обновил свой ответ. Вы можете вставить свой код в метод 'slug_candidates'. Я протестировал его в примерном проекте, и он работал как ожидалось –
Забыл ответить - отлично поработал! – Mark