Html 调用render时未加载Ruby布局

Html 调用render时未加载Ruby布局,html,ruby-on-rails,ruby,Html,Ruby On Rails,Ruby,我正在使用模型验证,我想用register.html.erb页面加载默认布局。但是,当我只使用渲染寄存器时,我的布局没有加载。请检查- #users_controller.rb def create @user = User.new(create_user_params) #raise @user.inspect respond_to do |format| if @user.save format.html { redirect_to :su

我正在使用模型验证,我想用register.html.erb页面加载默认布局。但是,当我只使用渲染
寄存器时,我的布局没有加载。请检查-

#users_controller.rb
def create
    @user = User.new(create_user_params)
    #raise @user.inspect
    respond_to do |format|
      if @user.save
        format.html { redirect_to :success, notice: 'Registration was successfully created.' }
        format.json { render :success, status: :created, location: @users }
      else
        format.html { render :register }
        format.json { render json: @users.errors, status: :unprocessable_entity }
      end
    end
  end
下面是
format.html{render:register}
我已成功获取验证错误消息。但是设计只缺少加载
register.html.erb
。完整页面未随布局一起提供。如果我使用
重定向\u至:注册
而不是
呈现:注册
我的页面成功重定向至注册页面,但我的错误消息未显示

我将如何显示我的验证错误和设计

用户\u控制器.rb

class UsersController < ApplicationController
  before_action :set_user, only: [:show, :edit, :destroy, :register_success]


  # GET /users
  # GET /users.json  
  def index
    @users = User.all
  end

  # GET /users/1
  # GET /users/1.json
  def show
  end

  # GET /users/new
  def new
    @user = User.new
  end

  # GET /users/1/edit
  def edit
  end

  #=============================CHINU CODE START
  def login
    @title = 'Login'
    render layout: 'login'
  end
  def create_login
    user = User.authenticate(params[:user][:username], params[:user][:password])
    if user
      log_in @user
      redirect_to @user
    else
      flash[:danger] = 'Invalid email/password combination' # Not quite right!
      redirect_to :back
    end
  end
  def register
    @user = User.new
    @title = 'Register'
    render layout: 'login'
  end

  def create
    @user = User.new(create_user_params)
    #raise @user.inspect
    respond_to do |format|
      if @user.save
        format.html { redirect_to @users, notice: 'Registration was successfully created.' }
        format.json { redirect_to :success, status: :created, location: @users }
      else
        format.html { render :register }
        format.json { render json: @users.errors, status: :unprocessable_entity }
      end
    end
  end

  def register_success
    raise @user.inspect
  end

  def check_email    
    email = params[:user]
    user = User.where("email = ?", email).first
    if user.present?
      render :json =>  [false , "This email is already taken"]
    else
      render :json =>  [true , "Email available"]
    end
  end
  def check_username   
    username = params[:user]
    user = User.where("username = ?", username).first
    if user.present?
      render :json =>  [false , "Username has already been taken"]
    else
      render :json =>  [true , "Username available"]
    end
  end
  #=============================CHINU CODE END

  private
  # Use callbacks to share common setup or constraints between actions.
  def set_user
    @user = User.find(params[:id])
  end

  # Never trust parameters from the scary internet, only allow the white list through.
  def user_params
    params.require(:user).permit(:name, :username, :email, :password, :image, :dob, :photo, :address)
  end
  def create_user_params
    params.require(:user).permit(:name, :username, :email, :password, :dob, :address)
  end

  def login_user_params
    params.require(:user).permit(:username, :password, :password_confirmation)
  end
end
class ApplicationController < ActionController::Base
  # Prevent CSRF attacks by raising an exception.
  # For APIs, you may want to use :null_session instead.
  protect_from_forgery with: :exception
  include SessionsHelper

end
class UsersController[false,“此电子邮件已被接收”]
其他的
render:json=>[true,“电子邮件可用”]
结束
结束
def check_用户名
用户名=参数[:用户]
user=user.where(“username=?”,username.first
如果user.present?
render:json=>[false,“用户名已被使用”]
其他的
render:json=>[true,“用户名可用”]
结束
结束
#==================================================================中国代码结束
私有的
#使用回调在操作之间共享公共设置或约束。
def set_用户
@user=user.find(参数[:id])
结束
#永远不要相信来自恐怖网络的参数,只允许白名单通过。
def用户参数
参数require(:user).permit(:name,:username,:email,:password,:image,:dob,:photo,:address)
结束
def创建用户参数
参数require(:user).permit(:name,:username,:email,:password,:dob,:address)
结束
def登录\用户\参数
参数require(:user).permit(:用户名,:密码,:密码确认)
结束
结束
应用程序\u控制器.rb

class UsersController < ApplicationController
  before_action :set_user, only: [:show, :edit, :destroy, :register_success]


  # GET /users
  # GET /users.json  
  def index
    @users = User.all
  end

  # GET /users/1
  # GET /users/1.json
  def show
  end

  # GET /users/new
  def new
    @user = User.new
  end

  # GET /users/1/edit
  def edit
  end

  #=============================CHINU CODE START
  def login
    @title = 'Login'
    render layout: 'login'
  end
  def create_login
    user = User.authenticate(params[:user][:username], params[:user][:password])
    if user
      log_in @user
      redirect_to @user
    else
      flash[:danger] = 'Invalid email/password combination' # Not quite right!
      redirect_to :back
    end
  end
  def register
    @user = User.new
    @title = 'Register'
    render layout: 'login'
  end

  def create
    @user = User.new(create_user_params)
    #raise @user.inspect
    respond_to do |format|
      if @user.save
        format.html { redirect_to @users, notice: 'Registration was successfully created.' }
        format.json { redirect_to :success, status: :created, location: @users }
      else
        format.html { render :register }
        format.json { render json: @users.errors, status: :unprocessable_entity }
      end
    end
  end

  def register_success
    raise @user.inspect
  end

  def check_email    
    email = params[:user]
    user = User.where("email = ?", email).first
    if user.present?
      render :json =>  [false , "This email is already taken"]
    else
      render :json =>  [true , "Email available"]
    end
  end
  def check_username   
    username = params[:user]
    user = User.where("username = ?", username).first
    if user.present?
      render :json =>  [false , "Username has already been taken"]
    else
      render :json =>  [true , "Username available"]
    end
  end
  #=============================CHINU CODE END

  private
  # Use callbacks to share common setup or constraints between actions.
  def set_user
    @user = User.find(params[:id])
  end

  # Never trust parameters from the scary internet, only allow the white list through.
  def user_params
    params.require(:user).permit(:name, :username, :email, :password, :image, :dob, :photo, :address)
  end
  def create_user_params
    params.require(:user).permit(:name, :username, :email, :password, :dob, :address)
  end

  def login_user_params
    params.require(:user).permit(:username, :password, :password_confirmation)
  end
end
class ApplicationController < ActionController::Base
  # Prevent CSRF attacks by raising an exception.
  # For APIs, you may want to use :null_session instead.
  protect_from_forgery with: :exception
  include SessionsHelper

end
class ApplicationController
您所说的“完整设计”是什么意思?缺少什么部分?完整的设计意味着我在
application.html.erb
layout中编写了css和js。但是我的布局没有加载。所以所有的css和js都丢失了。只有
register.html.erb
页面表单设计即将推出。@Chinu您的控制器是否继承
ApplicationController
?是我的控制器继承请回答: