2016-04-12 7 views
0

Sage CRMに属するSQLデータベースからデータを取得する必要があります。データテーブルに接続して作業することができます。データベースのビューの1つで作業する必要があり、その接続を取得できないようです。establish_connectionを使用してレールでSQLビューに接続できますか

ここで私はテーブルに接続しています。

class CrmTable < ActiveRecord::Base 

     self.abstract_class = true 
     def self.table_name_prefix 
     'dbo_' 
     end 
    # establish_connection "crm_tables_#{Rails.env}" 
     establish_connection "crm_tables" 
end 

class Address < CrmTable 
    self.table_name = "Address" 
end 

class Opportunity < CrmTable 
    self.table_name = "Opportunity" 
end 

これは、Address and Opportunityテーブルに問題なく接続します。

ただし、database/views/dbo.vPersonのSQLビューにアクセスしたいと考えています。

私は次のバリエーションを試してみました:

class Vperson < CrmTable 
    self.table_name = "Vperson" 
end 

しかし、私はすべてのレコードを取得していないようです。私は、私の見解では、以下を入れてみましたが、それはゼロ

<% @view_name = CrmTable::Vperson.all %> 

<% @view_name.inspect %> 

ビューにアクティブなレコードの接続を確立することが可能ですでしたか?もしそうなら、私は間違って何をしていますか?

答えて

0

OK、私はSTUPIDを感じています。<%@ view_name.inspect%>行に=を忘れました。<%= @ view_name.inspect%>である必要があります。それで私が何も見ていない理由を説明します。

ビューに接続するときにプライマリキーを追加する必要があると述べた別の質問があります。

How can I use SQL Server Table Views as Rails Models (Read Only)?