Я новичок в Ruby и Rails, исходя из Java и Playframework.uninitialized constant UrlsController :: Url
Я следую учебник http://www.sitepoint.com/building-your-first-rails-application-views-and-controllers/
Я получаю сообщение об ошибке на линии @shortened_url = Url.new
Ошибка:
NameError in UrlsController#new
uninitialized constant UrlsController::Url
Я чувствую, что это что-то вроде ClassNotFoundError в Java? ? не уверен ... кто-нибудь знает, что я должен делать. Это в основном вопрос использования include
или require
, с правильной ссылкой.
Извинения за общий вопрос newb, но я нахожу его намного легче учиться, делая ошибки и делая ошибки, это прилипает - и я считаю, что другие тоже принесут пользу.
class UrlsController < ApplicationController
def new
@shortened_url = Url.new
end
def create
@shortened_url = Url.new(params[:url])
if @shortened_url.save
flash[:shortened_id] = @shortened_url.id
redirect_to new_url_url
else
render :action => "new"
end
end
def show
@shortened_url = Url.find(params[:id])
redirect_to @shortened_url.url
end
end
У вас есть класс «Url»? Где находится файл с исходным кодом класса Url? И что это за файл? –
Добавьте 'require 'uri'' где-нибудь перед вызовом' Url # new'. – mudasobwa
Спасибо @mudasobwa, это не сработало - хотя мне кажется, что это должно быть – Ankur