C: /Sites/rails_projects/sample_app/app/controllers/users_controller.rb: 23: синтаксическая ошибка, неожиданный конец $, ожидание kEND - PullRequest
0 голосов
/ 29 июня 2011

Я новичок в программировании и обучаю себя RoR. Я использую http://ruby.railstutorial.org в качестве первого руководства. Я думал, что у меня все хорошо, но возникла, казалось бы, простая проблема, что даже после нескольких прочтений хорошего сообщения в стеке, связанного с этой темой, я все еще не могу это исправить. Я был бы признателен, если бы кто-то мог указать мне на проблему, с которой я столкнулся в своем коде.

Спасибо.

Я получаю эту ошибку.

C: /Sites/rails_projects/sample_app/app/controllers/users_controller.rb: 23: синтаксическая ошибка, неожиданный конец $, ожидание kEND

Вот код, который я использую:

class UsersController < ApplicationController

def show
  @user = User.find(params[:id])
  @title = @user.name
end

def new
  @user = User.new
  @title = "Sign up"
end

def create
  @user = User.new(params[:user])
  if @user.save
  sign_in @user
  flash[:success] = "Welcome to the Sample App!"
  redirect_to @user
else
  @title = "Sign up"
  render 'new'
 end
end

1 Ответ

5 голосов
/ 29 июня 2011

Проверьте отступ в вашем create методе. Вы не сделали отступ под if @user.save. Я знаю, что это немного не по теме, но если вы правильно сделали отступ, вы увидите, что end не закрывает класс.

class UsersController < ApplicationController

  def show
    @user = User.find(params[:id])
    @title = @user.name
  end

  def new
    @user = User.new
    @title = "Sign up"
  end

  def create
    @user = User.new(params[:user])
    if @user.save
      sign_in @user
      flash[:success] = "Welcome to the Sample App!"
      redirect_to @user
    else
      @title = "Sign up"
      render 'new'
    end # <= ends the if
  end # <= ends the def create
end # <= ends the class
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...