Ruby on Rails to platforma aplikacji internetowych typu open source napisana w języku Ruby. Podąża za popularnym modelem frameworkowym MVC i jest znana z podejścia „konwencyjnego nad konfiguracją” do tworzenia aplikacji.
Często muszę sprawdzić, czy jakaś wartość jest pusta i napisać „Brak danych” w ten sposób: @user.address.blank? ? "We don't know user's address" : @user.address A kiedy mamy około 20-30 pól, które musimy przetworzyć w ten sposób, robi się brzydko. To, co zrobiłem, to rozszerzona klasa String z ormetodą class String …
Rozejrzałem się ostatnio po Railsach i zauważyłem, że istnieje wiele odniesień do current_user. Czy to pochodzi tylko od Devise? i czy muszę ręcznie definiować to samodzielnie, nawet jeśli używam Devise? Czy istnieją warunki wstępne do korzystania current_user(takie jak istnienie sesji, użytkowników itp.)?
Chciałbym użyć to_dollarmetody w moim modelu w następujący sposób: module JobsHelper def to_dollar(amount) if amount < 0 number_to_currency(amount.abs, :precision => 0, :format => "-%u%n") else number_to_currency(amount, :precision => 0) end end end class Job < ActiveRecord::Base include JobsHelper def details return "Only " + to_dollar(part_amount_received) + " out of " …
Chcę sortować według dwóch kolumn, jedna to DateTime ( updated_at), a druga to Decimal (Price) Chciałbym móc najpierw sortować według updated_at, a następnie, jeśli kilka pozycji występuje tego samego dnia, sortować według ceny.
Mam tablicę takich skrótów: [{"testPARAM1"=>"testVAL1"}, {"testPARAM2"=>"testVAL2"}] I próbuję odwzorować to na pojedynczy hash w następujący sposób: {"testPARAM2"=>"testVAL2", "testPARAM1"=>"testVAL1"} Osiągnąłem to za pomocą par={} mitem["params"].each { |h| h.each {|k,v| par[k]=v} } Ale zastanawiałem się, czy można to zrobić w bardziej idiomatyczny sposób (najlepiej bez użycia zmiennej lokalnej). Jak mogę to zrobić?
Jestem nowy w pisaniu Railsów i API. Potrzebuję pomocy z rozwiązaniem pamięci masowej S3. Oto mój problem. Piszę API dla aplikacji iOS, w której użytkownicy logują się za pomocą Facebook API na iOS. Serwer weryfikuje użytkownika pod kątem tokena wystawionego przez Facebooka użytkownikowi iOS i wystawia tymczasowy token sesji. Od …
Tworzę nowy rekord w ten sposób: truck = Truck.create(:name=>name, :user_id=>2) Moja baza danych zawiera obecnie kilka tysięcy podmiotów dla ciężarówki, ale przypisałem identyfikatory do kilku z nich w sposób, który pozostawił dostępne identyfikatory. Więc co się dzieje, to rails tworzy element o id = 150 i działa dobrze. Ale potem …
Zamknięte . To pytanie jest oparte na opinii . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć za pomocą faktów i cytatów, edytując ten post . Zamknięte 6 lat temu . Popraw to pytanie Rozpoczynam projekt hobbystyczny (niezarobkowy) przy użyciu Ruby on …
Uruchomiłem aplikację Rails i wszystko działa dobrze. Ale teraz chciałbym zmienić nazwę kontrolera i związanego z nim modelu: Chciałem zmienić Corpskontroler na Storesi to samo (bez końcówek) dla modelu. Szukając go w Google, ludzie zasugerowali zniszczenie i ponowne wygenerowanie kontrolera i modelu. Problem w tym, że usunie rzeczywisty kod każdego …
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ę …
Widziałem to pytanie wcześniej, ale tylko dla rspec. Nie stworzyłem jeszcze testu, ponieważ jest dla mnie zbyt zaawansowany, ale wkrótce to zrobię! : P Ten błąd pojawia się, gdy próbuję się zarejestrować / zalogować do mojej aplikacji. Użyłem devise do stworzenia użytkownika, a także omniauth2 do logowania się z Google …
Mam konfigurację aplikacji, w której każdy użytkownik należy do firmy, a ta firma ma subdomenę (używam subdomen w stylu basecamp). Problem, z którym się zmagam, polega na tym, że railsy tworzą wiele ciasteczek (jeden dla lvh.me, a drugi dla subdomain.lvh.me), co powoduje kilka przerw w mojej aplikacji (na przykład wiadomości …
Mam tego pracownika, który działa wiecznie. class Worker include Sidekiq::Worker sidekiq_options queue: "infinity", retry: true def perform(params) # ... self.class.perform_in(30.seconds, params) end end Problem w tym, że ładuję pracowników podczas uruchamiania, w ten sposób. config/initializers/load_workers.rb Rails.application.config.after_initialize do if ENV["SIDEKIQ"] == "1" Worker.perform_async({}) end end Używanie tego do uruchomienia sidekiq SIDEKIQ=1 …
Chciałbym zgłosić wyjątek, aby robił to samo, co normalny wyjątek Rails. W szczególności pokaż wyjątek i ślad stosu w trybie programistycznym i wyświetl stronę „Przepraszamy, ale coś poszło nie tak” w trybie produkcyjnym. Wypróbowałem następujące: raise "safety_care group missing!" if group.nil? Ale po prostu zapisuje "ERROR signing up, group missing!"do …
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.