0

私は Michael Hartl の railstutorial.org を行っており、ビュー内のフォームを因数分解する練習をしようとしています。この章へのリンクは次のとおりです。この問題は、リスト 10.5、10.6、および 10.7 に関連しています。適切な を提供する方法を正確に理解しようとしています:urlが、少なくともそれが私がやっていることだと思います。

https://www.railstutorial.org/book/updating_and_deleting_users

ここに私のコードがあります:
_form.html.erb

<%= form_for @user, :url => yield(:url) do |f| %>  
     ...  
<% end %>

edit.html.erb

<% provide(:title, 'Edit user') %>
<% provide(:button_text, 'Save changes') %>
<% provide(:url, edit_user_path(current_user)) %>
<h1>Update your profile</h1>
<div class="row">
  <div class="col-md-6 col-md-offset-3">
    <%= render 'form' %>
    <div class="gravatar_edit">
      <%= gravatar_for @user %>
      <a href="http://gravatar.com/emails" target="_blank">Change</a>
    </div>
  </div>
</div>

new.html.erb

<% provide(:title, 'Sign up') %>
<% provide(:button_text, 'Create my account') %>
<% provide(:url, new_user_path) %>
<h1>Sign up</h1>
<div class="row">
  <div class="col-md-6 col-md-offset-3">
    <%= render 'form' %>
  </div>
</div>

これを機能させるために、さまざまな方法を試してみましたが、これまでのところ、役に立ちませんでした。失敗しているテストは次のとおりです。

 FAIL["test_invalid_signup_information", UsersSignupTest, 2.447965808212757]
 test_invalid_signup_information#UsersSignupTest (2.45s)
        Expected at least 1 element matching "form[action="/signup"]", found 0..
        Expected 0 to be >= 1.
        test/integration/users_signup_test.rb:8:in `block in <class:UsersSignupTest>'

そしてそのコード:

  test "invalid signup information" do
    get signup_path
    assert_response :success
    assert_select "form[action=\"/signup\"]"

ルート.rb

  get     '/signup',  to: 'users#new'
  post    '/signup',  to: 'users#create'
  patch   '/signup',  to: 'users#update'

どんな助けでも大歓迎です!

4

0 に答える 0