使用动作文本,我有一个名为 drill
与
class drill
has_rich_text :content
end
我有一个使用trix编辑器的表单。
<%= form_for @drill do |f| %>
<div class="field">
<%= f.label :content %>
<%= f.rich_text_area :content %>
</div>
<%= f.submit "Update", class: 'btn btn-primary' %>
<% end -%>
这将产生一个输入文本的空间,标签为 "内容",输入的id为 drill_content_trix_input_drill
, a trix-editor
元素的id为 drill_content
. 在rspec功能规范中,我尝试了以下几点
it 'fills the content field', js: true do
...
fill_in 'drill_content_trix_input_drill', with: 'Do full swing very slowly'
end
但这样一来
Capybara::ElementNotFound:
Unable to find field "drill_content_trix_input_drill" that is not disabled
我也试过 fill_in 'Content'
和 fill_in 'drill_content'
但看到类似的错误。我该如何解决这个问题?
给你
def fill_in_trix_editor(id, with:)
find(:css, "##{id}").click.set(with)
end