Я новичок в программировании на Ruby, но мой код для проверки вообще не появляется на первом шаге моего мастера после входа в систему. Моя проверка для двух дополнительных полей работает на начальном экране, но остальные поля - нет. вообще не работает?
Я также использую гем Devise для аутентификации.
Я пытался реализовать этот код. Нажмите здесь !
Мне не удалось.
Я попытался реализовать user_id, но он также не будет работать.
Я добавил оператор пут, и я вижу, что его ударили, но
проверка не происходит?
Я пытался сделать некоторые другие вещи без удачи. Я не совсем
понять, где это происходит в сторону.
Пожалуйста, смотрите мой код ниже.
Мой злой контроллер шагов
class AfterRegistrationController < ApplicationController
include Wicked::Wizard
layout 'noheaderOrfooter', :only => [:new, :show, :create, :update]
#before_action :authenticate_user!
steps :addCompanyInfo, :taxInformation, :achBankInfo, :finalstep
def show
@user = current_user
render_wizard
end
def update
@user = current_user
params[:user][:current_step] = step
case wizard_value(step)
when :addCompanyInfo
@user.update_attributes(company_params)
when :taxInformation
@user.update_attributes(tax_params)
when :achBankInfo
@user.update_attributes(bank_params)
else
@user.update_attributes(final_params)
end
render_wizard @user
end
def company_params
params.require(:user).permit(:CompanyLegName, :CompnayWebsite, :CompanyAddrss, :CompSuitOrApt, :City, :State, :ZipCode, :current_step)
end
def tax_params
params.require(:user).permit(:EINbr, :startdate, :NbrOfTrucks, :estpayroll, :City, :State, :ZipCode)
end
def bank_params
params.require(:user).permit(:BankName, :RoutNbr, :AcctNbr, :confirmAcctNbr)
end
def final_params
params.require(:user).permit(:CompanyLegName, :CompnayWebsite, :CompanyAddrss, :CompSuitOrApt, :City, :State, :ZipCode)
end
end
разработка регистрационного контроллера
def after_sign_up_path_for(resource)
after_registration_path(:addCompanyInfo)
end
модель пользователя
class User < ApplicationRecord
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable, :trackable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :validatable
validates :fname, :lname, :presence => true
validates :CompanyLegName, :CompanyAddrss, :CompSuitOrApt, :City, :State, :ZipCode, :presence => true, if: -> { current_step?(:addCompanyInfo) }
def current_step?(step_key)
current_step == step_key
puts 'I hit this method'
puts step_key
end
# Setup accessible (or protected) attributes for your model
#attr_accessible :email, :password, :password_confirmation, :remember_me, :fname, :lname, #:CompanyLegName, :CompanyAddrss, :CompSuitOrApt, :City, :State, :ZipCode, :Ownersfname, #:OwnersLname
#devise :database_authenticatable, :registerable,
#:recoverable, :rememberable, :trackable, :validatable
end