Ich versuche, eine Herausforderung zu lösen, aber ich erhielt eine Fehlermeldung von Cabybara sagen:Rails: Capybara :: ElementNotFound
`Failure/Error: fill_in 'Name', with: 'Vostro 2017'
Capybara::ElementNotFound: Unable to find visible field "Name" that is not disabled`
Mein new.html.erb
ist:
<%= form_for @item, url: {action: "create"} do |f|%>
<%= f.label 'Name' %>
<%= f.text_field :name %>
<%= f.label 'Description' %>
<%= f.text_field :description %>
<%= f.label 'Features' %>
<%= f.text_field :features %>
<%= f.label 'Asset number' %>
<%= f.text_field :assetNumber %>
<%= f.submit%>
<% end %>
Und mein item_controller.rb
ist :
class ItemController < ApplicationController
def show
@items = Item.find(params[:id])
end
def new
@item = Item.new
end
def create
@item = Item.new(item_params)
@item.save
redirect_to @item
end
private
def item_params
params.require(:item).permit(:name, :description, :features, :assetNumber)
end
end
die rspec-Datei, die verwendet wird, um den Test zu tun ist:
require 'rails_helper'
feature 'User creates a new inventory item' do
scenario 'successfully' do
visit new_item_path
fill_in 'Name', with: 'Vostro 2017'
fill_in 'Description', with: 'Dell Notebook'
fill_in 'Features', with: '16gb, 1Tb, 15.6"'
fill_in 'Asset number', with: '392 DLL'
click_button 'Create Item'
expect(page).to have_content 'Vostro 2017'
expect(page).to have_content 'Dell Notebook'
expect(page).to have_content '16gb, 1Tb, 15.6"'
expect(page).to have_content '392 DLL'
end
end
Ich benutze Ruby-2.3.5 und Schienen 4.1.0. Ich bin Anfänger in Ruby/Rails und ich kann nicht herausfinden, was mit meinem Code falsch ist. Kann mir jemand helfen, das zu lösen? Ich schätze im Voraus.
Können Sie die Frage mit dem Modal auch bitte aktualisieren. –
@Ziyan Junaideen was ist modal? – viniCdaSilva