我在我的应用程序中使用了freindly_id。我在我的应用程序中设置了一些灯具。我想对它们进行集成测试。在测试期间,我需要friendly_id,但是从fixture中创建的DB记录在Slug表中没有相应的slug。
不是从Fixture数据自动创建的slug?如果没有那么什么可以解决?
答案 0 :(得分:0)
一种解决方案是运行生成slu的rake任务,但是在测试环境中。
在Windows上
>set RAILS_ENV=test
>rake friendly_id:redo_slugs MODEL=xxx
或Unix / Linux
>export RAILS_ENV=test
>rake friendly_id:redo_slugs MODEL=xxx
答案 1 :(得分:0)
最简单的方法是将slug
添加到灯具数据:
# test/fixtures/things.yml
apple:
title: Apple
restricted: hellyes
slug: apple
# app/model/thing.rb
class Thing << ApplicationRecord
extend FriendlyId
friendly_id :name, use: :slugged
end