I가 다음과 같은 데이터베이스 스키마ActiveScaffold - 새 레코드를 삽입 할 때, 방법이 "belongs_to"모델을 생성되는에 열/모델에 대한 입력 필드를 활성화
create_table "addresses", :force => true do |t|
t.string "road"
t.string "city"
t.datetime "created_at"
t.datetime "updated_at"
t.integer "client_id"
end
create_table "clients", :force => true do |t|
t.integer "address_id"
t.integer "order_id"
t.string "first_name"
t.string "last_name"
t.datetime "created_at"
t.datetime "updated_at"
end
create_table "orders", :force => true do |t|
t.integer "order_id"
t.integer "client_id"
t.datetime "created_at"
t.datetime "updated_at"
end
end
및 모델 :
class Client < ActiveRecord::Base
belongs_to :address
end
class Order < ActiveRecord::Base
belongs_to :client
end
class Address < ActiveRecord::Base
end
이 설정의 의도는 많은 클라이언트 레코드를 가지며 각 클라이언트에는 주소가 있습니다. 여러 클라이언트가 동일한 주소를 가질 수 있습니다. 주소 테이블의 client_id는이 용도로 사용됩니다.
/Client ActiveScaffold보기를 방문하여 만들기를 클릭하면 클라이언트의 새 주소 데이터를 포함하여 새 클라이언트의 데이터를 입력 할 수 있습니다.
그러나 Orders보기를 방문하여 Create를 클릭하면 새 Client를 추가하고 그에 대한 데이터를 입력 할 수 있지만 주소에는 선택 상자 만 있으므로 기존의 데이터를 선택할 때만 사용할 수 있습니다. 주소에는 새 클라이언트의 새 주소를 만들 수있는 입력란이 없습니다. 클라이언트의 새 주소를 만들려면 어떻게해야 새 클라이언트의 주소 필드를 포함시킬 수 있습니까? 사전에
덕분에
내 질문에 답변 해 주셔서 감사합니다.하지만 실제로이 목적을 위해 양식을 작성한 contollers를 작성했습니다.이 프로젝트에서는 ActiveScaffold를 더 이상 사용하지 않습니다. – denysonique
@denysonique - 걱정할 필요가 없습니다. 알아두면 유용합니다. rails_admin rails3에 대한 요즘과 같은 당신이 말하길, 우리가 제대로 애플 리케이션을 위해 그것을 쓰는 라운드를 얻을 때까지 그냥 stopgap :) –