2017-06-19 6 views
1

In meiner Rails App versuche ich einen Redshift-Speicher für eines meiner Modelle zu bekommen. Ich habe den richtigen Einstellungen wieSchienen mit Redshift - wie erstelle ich Relation?

class RedshiftBase < ActiveRecord::Base 
    establish_connection :redshift_development 
    self.abstract_class = true 
end 

und

class Books < RedshiftBase 
    self.table_name = :books 
end 

so meine Book.connection kehrt gültig #<ActiveRecord::ConnectionAdapters::RedshiftAdapter:0... Objekt. Noch habe ich keine Ahnung, wohin ich von hier gehe, so bekomme ich eine Beziehung, die Redshift db jedes Mal aktualisieren wird, wenn ich ein Objekt erstelle (Book.new gibt PG::UndefinedTable: Fehler bis jetzt zurück).

+0

Versuchen Sie, 'books' Tabelle wie' Book.connection.execute ('wählen Sie zählen (*) aus Büchern') ''. Es besteht die Möglichkeit, dass Sie 'Bücher' nicht im' öffentlichen' Namensraum haben. –

+0

Die Sache ist, dass ich keine gültige Beziehung in RedShift erstellen kann (weiß nicht wie). Ich kann Dinge wie "Book.connection.create_table (: books)" tun und ich werde eine Beziehung bekommen. ABER ist das ein Weg dies zu tun? Wie erstelle ich Attribute? – Vla

+0

Was ist "Beziehung" genau? Wenn es sich um eine Tabelle handelt, haben Sie Active Record Migrations verwendet, um sie zu erstellen? –

Antwort

Verwandte Themen