2016-04-09 46 views
1

Rails 4, Devise for auth ve React.JS'yi bir projedeki tepki rayları üzerinden görmek için kullanıyorum.tepkime rampaları kayıt formu sorunu

Şu anda özel kayıt çalışmayı almaya çalışıyorum. Dokümanları adım adım takip ettim, Kullanıcılarıma/kayıtlara_düzenleyicilere yönlendirmeyi özelleştirdim ve her şeyi işe yaramaz işlere taşıdım.

Ajax'ı ön uçtaki formumdan çıkarmak için jquery kullanıyorum. Şu anda test için bazı verileri kodladı.

Şimdi 422 yanıtı alıyorum, gönderirken şifre ve e-posta bulamadığını söylüyor. Ancak, iletilen diğer değerler hakkında hiçbir şeyden bahsetmiyor, bu yüzden hala varsayılan araç motoru olacak gibi görünüyor ... herhangi bir yardım güzel olurdu devise yapılandırmak zor olduğu için bir üne sahiptir biliyorum.

İşte
def create 
    @user= User.new(configure_sign_up_params) 
respond_to do |format| 
    if @user.save 
     format.html { redirect_to @user, notice: 'User was successfully created.' } 
     format.json { render :show, status: :created, location: @user } 
    else 
     format.html { render :new } 
     format.json { render json: @user.errors, status: :unprocessable_entity } 
    end 
end 

burada benim güçlü parametreler Bu benim
let formData = 
     { 
      "username": "test", // document.getElementById('username').value 
      "password": "1234", 
      "password_confirmation": "1234", 
      "email": "[email protected]", 
      "membership": "community" 
     } 
JSOn.stringify'ing-

sonra yolluyorum veridir

def configure_sign_up_params 
    devise_parameter_sanitizer.for(:sign_up) {|u| u.permit(:email, :password, :password_confirmation) } 
end 

çalışmadığını var fonksiyonu-benim denetleyicisi var

Bu ağ ile yanıt vermemde hata - 422 bu gövde ile

{"email":["can't be blank"],"password":["can't be blank"]} 

Şimdiden teşekkürler! vasiyetle params(:user) benzer bir şey yapar beri

cevap

0

deneyin

{ 
    user: { 
    "username": "test", 
    "password": "1234", 
    "password_confirmation": "1234", 
    "email": "[email protected]", 
    "membership": "community" 
    } 
} 

olarak göndermek için ve parametreler

hiçbir kullanıcı anahtar olduğu için bunun nil döndürür