Ruby on Rails generuje pole modelu: type-jakie są opcje dla pola: type?
Próbuję wygenerować nowy model i zapomnieć o składni odwołującej się do identyfikatora innego modelu. Sam bym to sprawdził, ale nie znalazłem, wśród wszystkich moich linków do dokumentacji Ruby on Rails, jak znaleźć ostateczne źródło.
$ rails g model Item name:string description:text
(i tu albo reference:product
albo references:product
). Ale lepszym pytaniem jest gdzie lub Jak mogę łatwo szukać tego rodzaju głupoty w przyszłości?
Uwaga: nauczyłem się na własnej skórze, że jeśli źle wpisuję jedną z tych opcji i Uruchom moją migrację wtedy Ruby on Rails całkowicie zepsuje moją bazę danych... i rake db:rollback
jest bezsilny wobec takich wpadek. Jestem pewna, że czegoś nie rozumiem, ale dopóki tego nie zrobię... "szczegółowe" informacje zwracane przez rails g model
wciąż mnie drapią...
6 answers
:primary_key, :string, :text, :integer, :float, :decimal, :datetime, :timestamp,
:time, :date, :binary, :boolean, :references
Patrz sekcja definicje tabeli .
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-10-01 18:21:10
Aby utworzyć model, który odwołuje się do innego, użyj generatora modeli Ruby on Rails:
$ rails g model wheel car:references
, który produkuje app / models / wheel.rb:
class Wheel < ActiveRecord::Base
belongs_to :car
end
I dodaje następującą migrację:
class CreateWheels < ActiveRecord::Migration
def self.up
create_table :wheels do |t|
t.references :car
t.timestamps
end
end
def self.down
drop_table :wheels
end
end
Po uruchomieniu migracji w twoim dB/schemacie pojawią się następujące elementy.rb:
$ rake db:migrate
create_table "wheels", :force => true do |t|
t.integer "car_id"
t.datetime "created_at"
t.datetime "updated_at"
end
Jeśli chodzi o dokumentację, punktem wyjścia dla generatorów rails jest Ruby on Rails: Przewodnik po wierszu poleceń Rails , który wskazuje na API Dokumentacja aby uzyskać więcej informacji o dostępnych typach pól.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-01-08 03:02:22
$ rails g model Item name:string description:text product:references
Ja również uważam, że przewodniki są trudne w użyciu. Łatwo zrozumieć, ale trudno znaleźć to, czego szukam.
Mam również projekty temp, na których uruchamiam komendy rails generate
. Potem, gdy już je uruchomiłem, uruchomiłem je na moim prawdziwym projekcie.
Odniesienie do powyższego kodu: http://guides.rubyonrails.org/getting_started.html#associating-models
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-06-20 17:47:45
Pamiętaj, aby nie zapisywać tekstu wielkimi literami podczas pisania tego polecenia. Na przykład:
Napisz:
rails g model product title:string description:text image_url:string price:decimal
Nie pisz:
rails g Model product title:string description:text image_url:string price:decimal
Przynajmniej to był dla mnie problem.Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-05-31 17:08:36
Http://guides.rubyonrails.org powinna być dobrą stroną, jeśli próbujesz przejść przez podstawowe rzeczy w Ruby on Rails.
Oto link do kojarzenia modeli podczas ich generowania: http://guides.rubyonrails.org/getting_started.html#associating-models
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-01-08 03:01:37
Miałem ten sam problem, ale mój kod był trochę inny.
def new
@project = Project.new
end
A moja forma wyglądała tak:
<%= form_for @project do |f| %>
and so on....
<% end %>
url: { projects: :create }
po <%= form-for @project
zadziałało.Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-01-08 03:03:18