içinde kullanım yoluna değişken geçirme Bu book kullanarak Ruby on Rails öğreniyorum. here'dan ikinci alıştırmada takılıyorum.Kısmi
Benim formu kısmi app/views/users/_form.html.erb
şuna benzer:
<% provide(:title, "Edit user") %>
<% provide(:button_text, "Save changes") %>
<% provide(:url, user_path) %>
<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" rel="noopener noreferrer">Change</a>
</div>
</div>
</div>
:
<% provide(:title, 'Sign up') %>
<% provide(:button_text, 'Create my account') %>
<% provide(:path, signup_path) %>
<h1>Sign Up</h1>
<div class="row">
<div class="col-md-6 col-md-offset-3">
<%= render 'form' %>
</div>
</div>
ve benim düzenleme görmek app/views/users/edit.html.erb
şudur:
<%= form_for(@user, url: yield(:path)) do |f| %>
<%= render 'shared/error_messages', object: @user %>
<%= f.label :name %>
<%= f.text_field :name, class: 'form-control' %>
<%= f.label :email %>
<%= f.email_field :email, class: 'form-control' %>
<%= f.label :password %>
<%= f.password_field :password, class: 'form-control' %>
<%= f.label :password_confirmation %>
<%= f.password_field :password_confirmation, class: 'form-control' %>
<%= f.submit yield(:button_text), class: "btn btn-primary" %>
<% end %>
kısmi My kayıt görünümü app/views/users/new.html.erb
şudur Benim sorunum, hangi doğru yolu bilmiyorum r edit viewile ayarlamak zorundayım yöntemi sağlayın.
signup_path ile kayıt görünümü için iyi çalışıyor. Ne düzenleme görünümü için çalıştı bağlıdır: (şu anda kod örneğinde)
user_path
edit_user_path
edit_user_path(@user)
akım yönlendirme hatası I Aşağıda
(kullanıcı nesnesi geçmesine) var:
ve aşağıdaki kullanıcıya ilişkin mevcut yolları olduğunu:
<%= form_for(@user) do |f| %>
<%= render 'shared/error_messages', object: @user %>
<%= f.label :name %>
<%= f.text_field :name, class: 'form-control' %>
<%= f.label :email %>
<%= f.email_field :email, class: 'form-control' %>
<%= f.label :password %>
<%= f.password_field :password, class: 'form-control' %>
<%= f.label :password_confirmation %>
<%= f.password_field :password_confirmation, class: 'form-control' %>
<%= f.submit yield(:button_text), class: "btn btn-primary" %>
<% end %>
:
Mesela ben bir url sağlamak için düzenleme görünümü için temin kullanmıyorsanız, burada gibi çalışıyor
Ancak amaç kısmi kullanarak kodu yeniden kodlamaktır, bu yüzden kayıt görünümü için bir URL vermem gerekiyor. routes.rb
:
Rails.application.routes.draw do
get 'sessions/new'
get 'users/new'
root 'static_pages#home'
get '/help', to: 'static_pages#help'
get '/about', to: 'static_pages#about'
get '/contact', to: 'static_pages#contact'
get '/signup', to: 'users#new'
post '/signup', to: 'users#create'
get '/login', to: 'sessions#new'
post '/login', to: 'sessions#create'
delete '/logout', to: 'sessions#destroy'
resources :users
end
Eğer kısmını sonrası olabilir Bu benim çalışma çözümdür 'route.rb' sizin kullanıcılar için yollar belirlediğiniz – mrzasa
Sadece işleme, Raylar ve formların aktif kayıtla nasıl çalıştığına bir göz atmalısınız. Modellerle iskele denetleyicisini oluşturmaya devam edin. Savunmayı çabuk öğreneceksin. –
, 'routes.rb' @mrzasa – ronatory