私は ActiveResource の使用を検討していますが、現在、自分で解決できないという問題に直面しています (解決策を数日間ネットで検索していました)。
したがって、認証アプリhttp://localhost:80
はポート :85 にあり、クライアントはポート :85 にあります
私の認証アプリで
RESTアーキテクチャに従い、xml呼び出しに応答するように設定されたコントローラーを備えたユーザーモデルがあります。
認証アプリにあるものは次のとおりです。
モデル/User.rb
class User < ActiveRecord::Base
end
*controllers/users_controller.rb*
class UsersController < ApplicationController
respond_to :html, :xml, :js
def index
@users = User.find :all
respond_with @users
end
def show
@user = User.find(params[:id])
respond_with @user
end
.
.
.
end
クライアント アプリケーションで
次のように、アクティブなリソースから拡張するクラスがあります。
models/user.rb
class User < ActiveResource::Base
self.site = "http://localhost:80"
end
これが私がそれを使用しようとしている方法です: *controllers/sessions_controller.rb*
class SessionController < ApplicationController
def home
@user = User.find(:all)
end
end
何がうまくいかないのでしょうか?
しかし、次のエラーが表示されます。
2013-09-02 08:33:44 +1200 で 127.0.0.1 の GET "/" を開始
HTML としての SessionsController#home による処理 3ms で 500 内部サーバー エラー
を完了NameError (初期化されていない定数 ActiveResource):
app/models/user.rb:1:in home'<top (required)>'
app/controllers/sessions_controller.rb:4:inレンダリング
/usr/lib/ruby/gems/1.9.1/gems/actionpack-4.0.0/lib/action_dispatch/middleware/templates/rescues/_source.erb
(1.6ms) レンダリング /usr/lib/ruby/gems/1.9 .1/gems/actionpack-4.0.0/lib/action_dispatch/middleware/templates/rescues/_trace.erb
(2.7ms) レンダリング /usr/lib/ruby/gems/1.9.1/gems/actionpack-4.0.0/ lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb
(2.2ms) レンダリング /usr/lib/ruby/gems/1.9.1/gems/actionpack-4.0.0/lib/action_dispatch/middleware/templates/rescues/diagnosticsレスキュー/レイアウト内の .erb (37.4ms)
私は使っている:
ruby 1.9.3p0 (2011-10-30 リビジョン 33570) [i686-linux]
Rails 4.0.0
activeresource (4.0.0) gem をインストール
私は何が間違っているのでしょうか?
ActiveResource が接続に失敗しlocalhost:80
、結果として初期化されない可能性はありますか?
編集:
完了した rvm は 2.0.0 を使用するため、現在の ruby バージョンは次のとおりです: ruby 2.0.0p247 (2013-06-27 リビジョン 41674) [i686-linux]
編集:
RubyGems 環境:
- RUBYGEMS バージョン: 2.0.7 - Ruby バージョン
: 1.9.3 (2011-10-30 パッチレベル 0) [i686-linux]
- インストール ディレクトリ: /usr/lib/ruby/gems/1.9.1
- RUBY EXECUTABLE : /usr/bin/ruby1.9.1
- 実行可能ディレクトリ: /usr/bin
- RUBYGEMS プラットフォーム:
- ruby
- x86-linux
- GEM パス:
- /usr/lib/ruby/gems/1.9.1
- /home/dmitry/ .gem/ruby/1.9.1
- GEM 設定:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- リモートソース:
- https://rubygems.org/