TEL:400-8793-956
当前位置:程序、服务器

未定义的方法“内容”

提问者: 近期获赞: 浏览人数: 发布时间:2021-03-12 09:55:22

 问:在课程的最后阶段,当我进行测试时,我在rspec中得到了这个错误

 
查看待办事项显示待办事项列表的标题时不显示任何项目;待办事项列表为空时;当待办事项列表中有项目时显示项目内容(失败-1)
 
失败:
 
1)当待办事项列表中有项目时,查看待办事项将显示项目内容。失败/错误:click_link“列出项目” ActionView :: Template :: Error:app_views_todo_items_index_html_erb中未定义的方法content' for nil:NilClass # ./app/views/todo_items/index.html.erb:6:in块3713388154754784548_70050973841440'#./ app/ views/todo_items/index。 html.erb:5:in`_app_views_todo_items_index_html_erb _3713388154754784548_70050973841440'#./spec/ block in visit_todo_list' # ./spec/features/todo_items/index_spec.rb:9:infeatures/ todo_items/index_spec.rb:10:in visit_todo_list'#./spec/ features/todo_items/index_spec.rb(31: )在<top(必填)>'中
 
在0.18019秒内完成3个示例,其中1个失败
 
失败的例子:
 
rspec ./spec/features/todo_items/index_spec.rb:27#当待办事项列表中有项目时,查看待办事项将显示项目内容
 
随机带种子30861
 
这是我的代码:
 
在index.html.rb中:
 
<h1> <%= @ todo_list.title%> </ h1> <p>在app / views / todo_items / index.html.erb </ p>中找到我
 
<ul class =“ todo_items”> <%= @ todo_list.todo_items.each做| todo_item | %> <li> <%= @ todo_item.content%> </ li> <%end%> </ ul>
 
在index_spec.rb中:
 
需要'spec_helper'
 
描述“查看待办事项”
 
let!(:todo_list){todo_list = TodoList.create(title:“ al bayt”,description:“ al bayt goodies”)}
 def visit_todo_list(list)
    访问“ / todo_lists”
    在“ #todo_list _#{list.id}”中做
        click_link“列表项”
    最终
结束
它“显示的待办事项列表的标题是”做
    visit_todo_list(todo_list)
    内的“H1”不要
        指望(页)。为了have_content(todo_list.title)
    年底
结束
它“不显示任何项目时,待办事项列表是空”,请
    访问visit_todo_list(todo_list)Expect
     (page.all(“ ul.todo_list li”)。size)。到eq(0)
结束
它“
在待办事项列表中有项目时显示项目内容”
 
 
 
    todo_list.todo_items.create(内容:“饮料”)
     todo_list.todo_items.create(内容:“食物”)
     visit_todo_list(todo_list)
     Expect(page.all(“ ul.todo_items li”)。size).to eq(2)
    内“ul.todo_items”不要
        指望(页)。为了have_content(“饮料”)
        希望(页)。为了have_content(“食品”)
    结束
结束
结尾
 
 
答:在todo_items / index.html.erb中,编写每个循环的开始
 
<%= @ todo_list.todo_items.each做| todo_item | %>
 
<%=
erb标签表示将内容写为html。您需要从该行中删除=符号,以便将其评估为红宝石代码。
上一篇: Wordpress中的关键CSS
下一篇: 空引用异常-Bird Movement.Update()