6
내 앱에서 사용자 정보 부분 (배송 주소 입력란)을 다른 페이지 (charges#new
)에서 업데이트하도록 서버에 출력물을 설정하고 서버 출력이 작동 중임을 나타내는 것처럼 보입니다. :레일즈가 데이터를 업데이트하지 않는 AJAX Devise 양식
Started PUT "/users" for ::1 at 2017-05-11 17:10:52 -0700
Processing by RegistrationsController#update as JS
Parameters: {"utf8"=>"✓", "user"=>{"street_address_1"=>"**street address**", "street_address_2"=>"", "city"=>"**city**", "state"=>"CA", "zip"=>"**zip code**", "provence"=>"", "country"=>"United States", "has_shipping"=>"true"}, "commit"=>"Calculate Shipping"}
User Load (0.1ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? ORDER BY "users"."id" ASC LIMIT 1 [["id", 1]]
User Load (0.1ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? LIMIT 1 [["id", 1]]
Order Load (0.1ms) SELECT "orders".* FROM "orders" WHERE "orders"."id" = ? LIMIT 1 [["id", 5]]
CACHE (0.0ms) SELECT "orders".* FROM "orders" WHERE "orders"."id" = ? LIMIT 1 [["id", 5]]
Rendered charges/_shipping.html.erb (5.0ms)
Rendered devise/registrations/update.js.erb (6.4ms)
Completed 200 OK in 150ms (Views: 26.1ms | ActiveRecord: 0.3ms)
그러나 콘솔을 확인할 때 정보가 아직 업데이트되지 않았습니다. 이것은 내 charges#new
입니다
$(".shipping-info").html("<%= escape_javascript(render 'charges/shipping') %>")
:
class RegistrationsController < Devise::RegistrationsController
respond_to :html, :js
private
def sign_up_params
params.require(:user).permit(:first_name, :last_name, :email, :password, :password_confirmation, :phone, :stripe_customer_id, :street_address_1, :street_address_2, :city, :state, :zip, :provence, :country, :has_shipping)
end
def account_update_params
params.require(:user).permit(:first_name, :last_name, :email, :password, :password_confirmation, :current_password, :phone, :admin, :stripe_customer_id, :street_address_1, :street_address_2, :city, :state, :zip, :provence, :country, :has_shipping)
end
end
나는 update.js.erb
다음과 같습니다
내 registrations_controller
이있다
<div class="product-row black-border-row row" style="margin-bottom: 60px">
<div class="container">
<%= render "shipping" %>
</div> <!-- page container -->
</div> <!-- product row -->
그리고 여기 _shipping.html.erb
부분이다 :
<div class="row text-center">
<h3>Shipping Address</h3>
<%= simple_form_for(@user, url: registration_path(@user), html: { method: :put }, remote: true) do |f| %>
<div class="form-inputs text-left">
<div class="form-group col-sm-6">
<%= f.label :street_address_1 %>
<%= f.text_field :street_address_1, class: "form-control" %>
</div>
<div class="form-group col-sm-6">
<%= f.label :street_address_2 %>
<%= f.text_field :street_address_2, class: "form-control" %>
</div>
<div class="form-group col-sm-6">
<%= f.label :city %>
<%= f.text_field :city, class: "form-control" %>
</div><div class="form-group col-sm-3 col-xs-6">
<%= f.label :state %>
<%= f.text_field :state, class: "form-control" %>
</div><div class="form-group col-sm-3 col-xs-6">
<%= f.label :zip %>
<%= f.text_field :zip, class: "form-control" %>
</div><div class="form-group col-sm-6">
<%= f.label :provence %>
<%= f.text_field :provence, class: "form-control" %>
</div><div class="form-group col-sm-6">
<%= f.label :country %>
<%= f.text_field :country, class: "form-control" %>
</div><div class="form-group">
<%= f.hidden_field :has_shipping, value: true %>
</div>
</div> <!-- form inputs -->
<%= f.button :submit, "Calculate Shipping" %>
<% end %>
</div> <!-- shipping row -->
왜이 테이블을 업데이트하지 않는지 알 수 있습니까?
편집 : 요청으로 노선, 여기 내 경로 있습니다 : 나는에 update
방법을 가하고 결국
get 'orders/update'
devise_for :users, :controllers => { registrations: 'registrations' }
resources :users, only: [:show]
get 'home/index'
root 'home#index'
get 'home/info'
get 'home/export'
get 'home/kits'
resources :products
get 'tags/:tag', to: 'products#index', as: :tag
resource :cart, only: [:show]
resources :order_items, only: [:create, :update, :destroy]
resources :orders, only: [:update, :edit, :show, :create]
resources :contacts
put "contacts/:id/archive" => "contacts#archive", as: "archive_contact"
put "contacts/:id/unarchive" => "contacts#unarchive", as: "unarchive_contact"
resources :charges
경로를 공유하고 '레이크 루트'를 실행하고 결과를 추가하십시오 .. –
@ Md.FarhanMemon, 요청에 따라 레이크 라우트 출력을 추가했습니다. – Liz
어떤 레일 및 개발자 버전을 사용하고 있습니까? –