私はレールに不慣れで、ルートに問題があります。リンクが送信されると、「http://example.com」に移動する必要がありますが、現在は localhost:3000/links/www.example.com に移動します。私は ruby 3.2.8 と ruby1.9.3p194 を実行しています。どの程度の情報が必要なのかわからない。ここです。私の見解では:
<p>
<h1><%= @link.title %></h1>
<%= link_to @link.url, @link.url %><br />
<p>Posted by: <% @link.user %> at <%= @link.created_at %></p>
</p>
私のコントローラーは次のように設定されています:
class LinksController < ApplicationController
def show
@link = Link.find(params[:id])
end
before_filter :authenticate_user!
def new
@link = Link.new
end
def create
@link = Link.new(params[:link])
respond_to do |format|
if @link.save
format.html { redirect_to @link, notice: 'Link was successfully created.' }
format.json { render :json => @link, status: :created, location: @link }
else
format.html { render :action => "new" }
format.json { render :json => @link.errors, :status => :unprocessable_entity }
end
end
end
end
私の development.rb ファイルには次のものがあります。
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
そして、私のルートは次のとおりです。
resources :pages
resources :links
root :to => "pages#index"
数え切れないほど検索した後、私は初心者なので運がありませんでした. リンクパスをリセットする方法についての提案は大歓迎です。