これが私がやろうとしていることです:私のアイテムには多くのアクションがあります。案件のステータスが変化したら、新しいアクションを作成します。後で、アイテムに関連付けられたアクションを要求します。残念ながら、ステータス変更によってアクションを作成しようとすると、次の例外が発生します: NameError at /create; uninitialized constant Shiny::Models::Item::Action
.
ここに私のモデルがあります:
module Models
class Item < Base
has_many :actions
def status=(str)
@status = str
actions.create do |a|
a.datetime = Time.now
a.action = str
end
end
end
class Actions < Base
belongs_to :item
end
class BasicFields < V 1.0
def self.up
create_table Item.table_name do |t|
t.string :barcode
t.string :model
t.string :status
end
create_table Actions.table_name do |t|
t.datetime :datetime
t.string :action
end
end
end
end
次に、コントローラーで次のようにします。
class Create
def get
i = Item.create
i.barcode = @input['barcode']
i.model = @input['model']
i.status = @input['status']
i.save
render :done
end
end