Active Record to wzorzec, który łączy logikę domeny z abstrakcją pamięci w jednym obiekcie. Użyj tego znacznika w przypadku pytań dotyczących wzorca, [rails-activerecord] w przypadku pytań dotyczących frameworka ORM Rails.
Mam to wyszukiwanie w Rails 3: Note.where(:user_id => current_user.id, :notetype => p[:note_type], :date => p[:date]).order('date ASC, created_at ASC') Ale potrzebuję tego :date => p[:date]warunku :date > p[:date]. W jaki sposób mogę to zrobić? Dziękuje za przeczytanie.
Chcę zrobić migrationw Railsach odwołanie do innej tabeli. Zwykle zrobiłbym coś takiego: add_column :post, :user, :references Spowoduje to utworzenie kolumny o nazwie user_idw poststabeli. Ale co jeśli zamiast tego user_idchcę czegoś takiego author_id? Jak mogę to zrobić?
Próbuję zrozumieć, czym has_many :throughjest i kiedy (i jak) tego używać. Jednak nie rozumiem. Czytam Beginning Rails 3 i próbowałem googlować, ale nie jestem w stanie tego zrozumieć.
Ludzie, Chcę się upewnić, że dobrze to rozumiem. I proszę zignoruj tutaj przypadek dziedziczenia (SentientBeing), próbując zamiast tego skupić się na modelach polimorficznych w has_many: poprzez relacje. To powiedziawszy, rozważ następujące ... class Widget < ActiveRecord::Base has_many :widget_groupings has_many :people, :through => :widget_groupings, :source => :person, :conditions => "widget_groupings.grouper_type = …
Chciałbym zobaczyć instrukcję SQL, którą wygeneruje dane zapytanie ActiveRecord. Rozumiem, że mogę uzyskać te informacje z dziennika po wysłaniu zapytania, ale zastanawiam się, czy istnieje metoda, którą można wywołać i kwerendę ActiveRecord. Na przykład: SampleModel.find(:all, :select => "DISTINCT(*)", :conditions => ["`date` > #{self.date}"], :limit => 1, :order => '`date`', :group …
Chcę zrobić coś takiego: SELECT * FROM USER WHERE NAME LIKE '%Smith%'; Moja próba w Arel: # params[:query] = 'Smith' User.where("name like '%?%'", params[:query]).to_sql Jednak staje się to: SELECT * FROM USER WHERE NAME LIKE '%'Smith'%'; Arel poprawnie opakowuje ciąg zapytania „Smith”, ale ponieważ jest to instrukcja LIKE, nie działa. …
Kiedy uruchamiam zapytania (np. MyModel.where(...)Lub record.associated_things) w konsoli, jak mogę zobaczyć rzeczywiste zapytania do bazy danych, aby lepiej zrozumieć, co się dzieje?
Wiem, że możesz poprosić ActiveRecord o wyświetlenie tabel w konsoli za pomocą: ActiveRecord::Base.connection.tables Czy istnieje polecenie, które wyświetli listę kolumn w podanej tabeli?
Mam model A, który ma powiązanie „has_many” z innym modelem B. Mam wymóg biznesowy, że wstawianie do A wymaga co najmniej 1 rekordu skojarzonego z B. Czy istnieje metoda, którą mogę wywołać, aby upewnić się, że to prawda? czy muszę napisać niestandardową walidację?
Czy istnieje sposób na zastąpienie wartości identyfikatora modelu podczas tworzenia? Coś jak: Post.create(:id => 10, :title => 'Test') byłby idealny, ale oczywiście nie zadziała.
Używając Railsów 3.2, co jest nie tak z tym kodem? @reviews = @user.reviews.includes(:user, :reviewable) .where('reviewable_type = ? AND reviewable.shop_type = ?', 'Shop', 'cafe') Rodzi ten błąd: Nie mogę chętnie załadować skojarzenia polimorficznego: przeglądalny Jeśli usunę reviewable.shop_type = ?warunek, działa. Jak mogę filtrować na podstawie reviewable_typei reviewable.shop_type(czyli w rzeczywistości shop.shop_type)?
Mam tablicę obiektów, nazwijmy to Indicator. Chcę uruchomić metody klasy Indicator (te z def self.subjectsróżnych, zakresów itp.) Na tej tablicy. Jedynym sposobem, w jaki znam, aby uruchamiać metody klas na grupie obiektów, jest posiadanie ich jako ActiveRecord :: Relation. W końcu uciekam się do dodania to_indicatorsmetody do Array. def to_indicators …
W obecnym stanie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi będą poparte faktami, referencjami lub ekspertyzą, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy, aby uzyskać …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.