Tag: arel

Arel ist ein Relationaler Algebra für Ruby. Es vereinfacht die Erstellung komplexer SQL-Abfragen und es passt zu verschiedenen RDBMS-Systemen.

ODER-operator in WHERE-Klausel mit Arel in Rails 4.2

Anzahl der Antworten 3 Antworten
Den folgenden code gebaut, eine gültige where - Klausel mit einer OR Betreiber in Rails 4.1 MyModel.where( MyModel.where(attribute1: 1, attribute2: 2).where_values.reduce(:or) ) Was in etwa äquivalent zu der SQL select * from my_models where (attribute1 = 1

Verbinden die gleiche Tabelle zweimal mit Bedingungen

Anzahl der Antworten 3 Antworten
Gibt es Situationen, wo ActiveRecord stellt die alias-Tabelle name, wenn es gibt mehrere Verknüpfungen mit der gleichen Tabelle. Ich bin in einer situation stecken, wo diese Verknüpfungen enthalten die Bereiche (mittels 'merge'). Habe ich eine viele-zu-viele-Beziehung: Modelle

Rails3 & ActiveRecord::Relation - Arel und ODER

Anzahl der Antworten 2 Antworten
Habe ich einige Bereiche definiert, die in ein Modell namens Veranstaltungen. Jetzt muss ich Ihnen beizutreten, mit ODER Betreiber. Ich bin mit Rails3 und ich bin ein wenig verwirrt mit ActiveRelation & Arel und wie und wie

Rails 3.2 (ActiveRecord) der Verein, um mit eager loading und Bestellung

Anzahl der Antworten 1 Antworten
Kam ich auf dieses Verhalten in Schienen, die ich kann nicht scheinen, zu finden in der Dokumentation. Scheint es, dass, wenn Sie erschweren eine ActiveRecord-Abfrage zu dem Punkt, dass es Klumpen, die zugrunde liegende SQL in eine

Ruby / Rails - Kann ich eine verknüpfte Tabelle als Bereich(oder Methode der Klasse) als Teil meiner WHERE-Klausel?

Anzahl der Antworten 1 Antworten
Möchte ich greifen Sie alle Kategorien enthalten purchaseable products. class Product < ActiveRecord::Base belongs_to :category scope :purchaseable, where(:available => true) end class Category < ActiveRecord::Base has_many :products scope :with_purchaseable_products, ????? end So, ich bin versucht zu definieren

ActiveRecord: können nicht `zupfen` nach `where` - Klausel mit gespannt-geladen-Verbände

Anzahl der Antworten 3 Antworten
Habe ich eine app, die hat eine Reihe von Post Modellen, von denen jeder belongs_to eine User Modell. Wenn diese Beiträge veröffentlicht werden, eine PublishedPost Modell erstellt wird, dass belongs_to die relevanten Post Modell. Ich versuche zu

Rails ActiveRecord::StatementInvalid: PG::Fehler: FEHLER: fehlende FROM-Klausel-Eintrag für Tabelle

Anzahl der Antworten 2 Antworten
Ich habe eine komplexe ActiveRecord-Abfrage, dass ich den Aufbau mit unterschiedlichen Bereichen, abhängig von der Auswahl des Benutzers. Ich bin mit 2 Edelsteinen, die scheint problematisch zu sein zusammen, aber ich kann nicht finden, wer der Täter

SQL "IN Unterabfrage", wenn eine Unterabfrage kann NULL sein

Anzahl der Antworten 5 Antworten
Ich habe eine Abfrage, die braucht, um Ergebnisse, die NICHT aufeinander abgestimmt sind in einer sub-Abfrage. Die sub-Abfrage zurückgeben kann, wird ein leeres Ergebnis, so brauche ich, um einen Standardwert (z.B. 0) wenn der sub-query gibt eine

Wie können Sie eine bedingte where-Bedingung mithilfe von AREL

Anzahl der Antworten 2 Antworten
Wie können Sie eine bedingte where-Klausel? Ich habe ein rake-task, der eine Abfrage ausführt. Sagen, ich bin beim erstellen einer Abfrage etwa so: residentials = Residential.where(:is_active => true) Nun, wenn ich vorbeigehe, einen bestimmten parameter der rake-task

Schienen where-Bedingung mit not NULL

Anzahl der Antworten 5 Antworten
Mithilfe des rails-3-Stil, wie würde ich schreiben das Gegenteil: Foo.includes(:bar).where(:bars=>{:id=>nil}) Will ich finden, wo id ist NICHT null. Ich habe versucht: Foo.includes(:bar).where(:bars=>{:id=>!nil}).to_sql Aber das gibt: => "SELECT \"foos\".* FROM \"foos\" WHERE (\"bars\".\"id\" = 1)" Das ist definitiv

Schienen Arel Auswahl unterschiedliche Spalten

Anzahl der Antworten 4 Antworten
Den ich getroffen habe, eine leichte block mit der neuen scope Methoden (Arel 0.4.0, Rails 3.0.0.rc) Grundsätzlich habe ich: Einen topics Modell, das has_many :comments, und ein comments Modell (mit einer topic_id Spalte), die belongs_to :topics. Ich

arel, wie Sie Mitglied werden

Anzahl der Antworten 3 Antworten
Gegeben class Category < ActiveRecord::Base has_many :products, :order => 'name ASC' end Mithilfe des Rails-3-stack, wie kann ich die Abfrage für alle Kategorien, die 'haben' - Produkte? InformationsquelleAutor Jan | 2010-09-17

Dekonstruktion Schienen .Verknüpfungen & .wo Methoden

Anzahl der Antworten 1 Antworten
Ich habe zwei Modelle - Banner und BannerType. Ihre schema sieht wie folgt aus: Banner # Table name: banners # # id :integer not null, primary key # name :string(255) # image :string(255) # created_at :datetime not

über scope auf eine Vereinigung

Anzahl der Antworten 3 Antworten
So, ich habe diese verrückte Idee, dass ich wollte, um einen Bereich anwenden, um eine inklusive Verband. Dies ist, was ich herausgefunden, und es scheint zu funktionieren: class Event < ActiveRecord::Base has_many :races has_many :bad_races, :conditions =>

Mehrere CTE in eine einzige Abfrage

Anzahl der Antworten 2 Antworten
Ist es möglich, kombinieren Sie mehrere CTEs in einzelne Abfrage mit arel? Ich bin auf der Suche nach Weg, um bekommen Ergebnis wie dieses: WITH 'cte1' AS ( ... ), WITH RECURSIVE 'cte2' AS ( ... ),

Schienen 4-query, durch die einzigartige single-Attribut

Anzahl der Antworten 6 Antworten
Das ist also eher eine arel Frage als alles andere, aber hier ist was ich zu tun versuche. Habe ich drei Objekte können sagen, genannt Elemente <Item id: 1, name: 'Book'> <Item id: 2, name: 'Car'> <Item

Unterabfragen in activerecord

Anzahl der Antworten 4 Antworten
Mit SQL kann ich einfach die sub-queries wie diese User.where(:id => Account.where(..).select(:user_id)) Diese produziert: SELECT * FROM users WHERE id IN (SELECT user_id FROM accounts WHERE ..) Wie kann ich dies tun, mit Schienen' 3 activerecord/arel/meta_where? Ich

Was genau ist Arel in Rails 3.0?

Anzahl der Antworten 4 Antworten
Ich verstehen, dass es ein Ersatz für ActiveRecord und mit Objekten anstelle von Abfragen. Aber... warum ist das besser? werden Objekte/Abfragen "einfacher" zu erstellen? wird es dazu führen, dass effizientere SQL-Abfragen? wird es sein, kompatibel mit allen

Wie finden Sie den Datensatz mit dem maximalen Preis?

Anzahl der Antworten 1 Antworten
Diese gibt die maximale Wertnicht den kompletten Datensatz: self.prices.maximum(:price_field) Aktuell finde ich den Datensatz wie folgt: def maximum_price self.prices.find(:first, :conditions => "price = #{self.prices.maximum(:price_field)}" ) end Ist das der richtige Weg ? Da oben braucht es zwei

Arel, Verknüpfungen und Schienen Abfragen

Anzahl der Antworten 5 Antworten
Ich Hänge schon länger an einem problem, vor kurzem für eine kleine Weile, und meinen Weg gefunden, um Arel, die wie es aussieht, soll mir erlauben, das zu tun, ODER ist in meinen Abfragen. Als Ausgangspunkt, die

Rails `wo` zur Zeit weniger als Abfragen

Anzahl der Antworten 4 Antworten
Setup Schienen' where Methode kann ein Bereich in einem hash zu generieren eine Abfrage, die Suche nach einem Wert, der innerhalb der Reihe. Zum Beispiel: User.where(cash_money: 10..1000) #=> SELECT `users`.* FROM `users` WHERE (`users`.`cash_money` BETWEEN 10 AND

Wie das umzusetzen, bulk insert in Rails 3

Anzahl der Antworten 4 Antworten
Muss ich einfügen, um ein array von E-Mails als verschiedene Datensätze in meine Tabelle "Kontaktpersonen". Wie kann das getan werden. Eg: @email = ["[email protected]", "[email protected]", "[email protected]", ... ] Möchte ich nicht verwenden. @email.each do |email| @contact =

So bestellen Sie enthaltene Elemente in Rails 3

Anzahl der Antworten 2 Antworten
Habe ich ein Modell Beziehung, wo today hat viele tasks Ich versuche zum abrufen eines Benutzers today Objekt, geben Sie auch die tasks und machen Sie alle zu Json. Dies alles war Super, bis ich beschloss, dass

So finden Sie Datensätze mit doppelten Daten mit Active Record

Anzahl der Antworten 6 Antworten
Was ist der beste Weg, um Datensätze zu finden, die doppelte Werte in einer Spalte mit Rubin und die new Activerecord? InformationsquelleAutor der Frage srboisvert | 2011-02-24

Kombinieren Sie zwei ActiveRecord :: Relation-Objekte

Anzahl der Antworten 9 Antworten
Angenommen ich habe folgende zwei Objekte: first_name_relation = User.where(:first_name => 'Tobias') # ActiveRecord::Relation last_name_relation = User.where(:last_name => 'Fünke') # ActiveRecord::Relation ist es möglich, kombinieren Sie die beiden Beziehungen ist zur Erzeugung einer ActiveRecord::Relation - Objekt enthält sowohl

Schienen, in denen Bedingung NOT NULL verwendet

Anzahl der Antworten 5 Antworten
Mithilfe des rails-3-Stil, wie würde ich schreiben das Gegenteil: Foo.includes(:bar).where(:bars=>{:id=>nil}) Will ich suchen, in denen id NICHT null ist. Ich habe versucht: Foo.includes(:bar).where(:bars=>{:id=>!nil}).to_sql Aber das gibt: => "SELECT \"foos\".* FROM \"foos\" WHERE (\"bars\".\"id\" = 1)" Das ist

Verschachtelte Abfragen in Arel

Anzahl der Antworten 5 Antworten
Ich bin versucht, nest SELECT-Abfragen in Arel und/oder Aktiven Datensatz in Rails 3 zu erzeugen die folgenden SQL-Anweisung. SELECT sorted.* FROM (SELECT * FROM points ORDER BY points.timestamp DESC) AS sorted GROUP BY sorted.client_id Einen alias für

Ist es möglich, das ActiveRecord :: Relation-Objekt für eine Zuordnung abzurufen

Anzahl der Antworten 4 Antworten
Do association Methoden, wie diese definiert durch has_many und belongs_to nutzen ActiveRecord::Relation? Wenn dem so ist, ist es möglich, den ActiveRecord::Relation - Objekt, das verwendet wird. Wir sind uns alle bewusst, dass die Schienen 3 ist stark

Der beste Weg, um einen einzelnen Datensatz mit ActiveRecord 3 / Arel zu finden?

Anzahl der Antworten 4 Antworten
Wo ich verwendet, um dies zu tun: Foo.find_by_bar('a-value') Kann ich jetzt tun: Foo.where(:bar => 'a-value').limit(1).first Ist diese zu empfehlen? Ist dies der beste Weg? Soll ich weiterhin den "alten" Weg, weil er weiterhin sinnvoll sein syntaktischer Zucker,

Wie kann man ein Array von IDs von der Abfrage in Rails (mit ActiveRecord) ausschließen?

Anzahl der Antworten 3 Antworten
Möchte ich ausführen einer ActiveRecord-Abfrage gibt alle Datensätze zurück, außer diejenigen Datensätze, die bestimmte ids. Die ids möchte ich ausgeschlossen, sind gespeichert in einem array. Also: ids_to_exclude = [1,2,3] array_without_excluded_ids = Item. ??? Ich bin mir nicht

ActiveRecord Arel ODER Bedingung

Anzahl der Antworten 10 Antworten
Wie können Sie kombinieren Sie 2 verschiedene Bedingungen mit logischen ODER statt UND? HINWEIS: 2 Bedingungen erzeugt werden, wie Schienen-Bereiche und kann nicht einfach geändert werden in etwas wie where("x or y") direkt. Einfaches Beispiel: admins =

Wie mache ich eine LIKE-Abfrage in Arel und Rails?

Anzahl der Antworten 3 Antworten
Ich möchte etwas machen wie: SELECT * FROM USER WHERE NAME LIKE '%Smith%'; Mein Versuch in Arel: # params[:query] = 'Smith' User.where("name like '%?%'", params[:query]).to_sql Allerdings wird dies: SELECT * FROM USER WHERE NAME LIKE '%'Smith'%'; Arel

Wie Verwenden von Unscoped für verknüpfte Relationen in Rails3?

Anzahl der Antworten 7 Antworten
Habe ich einen Standard-Rahmen auf Produkte, die aufgrund von Informationen security-Einschränkungen. class Product < ActiveRecord::Base has_many :photos default_scope where('visible = 1') end In meinem zugehörigen Foto-model, aber ich habe auch Produkte zu finden, die nicht sichtbar sein

Wie legen Sie ActiveRecord-Verknüpfungen in Rails 3 fest?

Anzahl der Antworten 6 Antworten
Ich habe eine Rails-3-Projekt. Mit Rails 3 kam Arel und die Wiederverwendung von einem Bereich zum anderen bauen. Ich Frage mich, ob es ist ein Weg, um Bereiche bei der Definition einer Beziehung (z.B. ein "has_many"). Habe

Sie möchten in Rails 3 Datensätze ohne verknüpfte Datensätze finden

Anzahl der Antworten 8 Antworten
Betrachten Sie einen einfachen Verband... class Person has_many :friends end class Friend belongs_to :person end Was ist der sauberste Weg, um alle Personen, die KEINE Freunde haben, die in ARel und/oder meta_where? Und was ist dann eine