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.
Według dokumentu Rails: http://guides.rubyonrails.org/migrations.html „Moduł Active Record śledzi, które migracje zostały już uruchomione, więc wszystko, co musisz zrobić, to zaktualizować źródło i uruchomić rake db: migrate”. Jak właściwie to robi ActiveRecord? Gdzie Active Record przechowuje dane? Podejrzewam, że to może być zapisane w samej bazie danych? Gdzieś w stole. Na …
Mam kilka testów RSpec dla moich modeli i chciałbym włączyć rejestrowanie SQL ActiveRecord, tak jak widzę w trybie serwera Rails. Jak to zrobić? Zaczynam testy od RAILS_ENV=test bundle exec rspec my/test_spec.rb Dzięki
Mam metodę w railsach, która robi coś takiego: a = Foo.new("bar") a.save b = Foo.new("baz") b.save ... x = Foo.new("123", :parent_id => a.id) x.save ... z = Foo.new("zxy", :parent_id => b.id) z.save Problem polega na tym, że im więcej jednostek dodam, trwa to dłużej i dłużej. Podejrzewam, że dzieje się …
Mam model ActiveRecord, który wraca truez valid?(i .errors jest pusty), ale wraca falsez save(). Jeśli instancja modelu jest prawidłowa, jak mogę dowiedzieć się, co powoduje niepowodzenie zapisu?
W mojej aplikacji Użytkownik może założyć Firmę. Kiedy wyzwalają indexakcję w moim BusinessesControllerChcę sprawdzić, czy Firma jest związana z current_user.id: Jeśli tak: wyświetl firmę. Jeśli nie: przekieruj do newakcji. Próbowałem tego użyć: if Business.where(:user_id => current_user.id) == nil # no business found end Ale zawsze zwraca prawdę, nawet jeśli firma …
Napisałem kilka złożonych zapytań (przynajmniej do mnie) za pomocą interfejsu zapytań Ruby on Rail: watched_news_posts = Post.joins(:news => :watched).where(:watched => {:user_id => id}) watched_topic_posts = Post.joins(:post_topic_relationships => {:topic => :watched}).where(:watched => {:user_id => id}) Oba te zapytania działają dobrze samodzielnie. Oba zwracają obiekty Post. Chciałbym połączyć te posty w jedną …
Chcę uzyskać wszystkie rekordy, w których pole created_at jest mniejsze niż dzisiaj (data). Czy jest coś takiego: MyTable.find_by_created_at(< 2.days.ago)
Mam następujący kod: @posts = Post.joins(:user).joins(:blog).select co ma na celu znalezienie wszystkich postów i zwrócenie ich oraz powiązanych użytkowników i blogów. Jednak użytkownicy są opcjonalni, co oznacza, że to, INNER JOINco :joinsgeneruje, nie zwraca wielu rekordów. Jak użyć tego do wygenerowania LEFT OUTER JOINzamiast tego?
Rozumiem, że jest to zamiennik dla ActiveRecord i używa obiektów zamiast zapytań. Ale... dlaczego tak jest lepiej czy obiekty / zapytania będą „łatwiejsze” do tworzenia? czy doprowadzi to do wydajniejszych zapytań SQL? czy będzie kompatybilny ze wszystkimi głównymi bazami danych? - Zakładam, że tak. czy korzystanie z procedur przechowywanych będzie …
Próbuję napisać zapytanie LIKE. Czytałem, że wymagania dotyczące czystych ciągów nie są bezpieczne, jednak nie mogłem znaleźć żadnej dokumentacji wyjaśniającej, jak pisać bezpieczne zapytanie LIKE Hash. Czy to możliwe? Czy powinienem ręcznie bronić się przed iniekcją SQL?
Jest następujący kod: class Product < ActiveRecord::Base validates :title, :description, :image_url, presence: true validates :price, numericality: {greater_than_or_equal_to: 0.01} validates :title, uniqueness: true validates :image_url, allow_blank: true, format: { with: %r{\.(gif|jpg|png)$}i, message: 'URL must point to GIT/JPG/PNG pictures' } end Działa, ale kiedy spróbuję go przetestować za pomocą „testu rake”, wyłapię …
W mojej aplikacji Railsowej kilka razy napotkałem problem, który chciałbym wiedzieć, jak rozwiązują go inni ludzie: Mam pewne rekordy, w których wartość jest opcjonalna, więc niektóre rekordy mają wartość, a niektóre są puste dla tej kolumny. Jeśli uporządkuję według tej kolumny w niektórych bazach danych, wartości null są sortowane jako …
Więc tam jest record.new_record? Aby sprawdzić, czy coś jest nowe Muszę sprawdzić, czy coś jest w ruchu. record = some_magic record.destroy record.is_destroyed? # => true Coś w tym stylu. Wiem, że zniszczenie zamraża obiekt, tak zamrożony? rodzaj działa, ale czy jest coś bezpośrednio do tego zadania?
Konfiguracja za pomocą prostego przykładu: Mam 1 tabelę ( Totals), która przechowuje sumę amountkolumny każdego rekordu w drugiej tabeli ( Things). Kiedy a thing.amountzostanie zaktualizowany, chciałbym po prostu dodać różnicę między starą wartością a nową wartością do total.sum. W tej chwili odejmuję w self.amounttrakcie before_updatei dodam w self.amounttrakcie after_update. To …
Powiedzmy, że mam następujące klasy class SolarSystem < ActiveRecord::Base has_many :planets end class Planet < ActiveRecord::Base scope :life_supporting, where('distance_from_sun > ?', 5).order('diameter ASC') end Planetma zakres life_supportingi SolarSystem has_many :planets. Chciałbym zdefiniować moją relację has_many, aby gdy pytam solar_systemo wszystkie powiązane planets, life_supportingzakres jest stosowany automatycznie. Zasadniczo chciałbym solar_system.planets == …
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.