这是我之前问题的一种演变(尽管我改变了很多,包括模型名称,所以我认为我应该更好地创建另一个线程)..问题的性质也改变了..
目前我正在努力为函数 @dot2.link!(@dot) 创建一个表单
该功能在控制台中运行良好。
这是来自模型/控制器的信息(我尽量保持最小):
class User < ActiveRecord::Base
has_many :dots, :dependent => :destroy
....
end
点
class Dot < ActiveRecord::Base
belongs_to :user
has_many :linkages
...
def link!(new_dot)
linkages.create!(:end_id => new_dot.id)
end
...
end
联动:
class LinkagesController < ApplicationController
...
def create
@dot = current_user.dots.find(params[:linkages][:end_id])
@dot2 = Dot.find(params[:id])
@dot2.link!(@dot)
end
联动迁移:
class CreateLinkages < ActiveRecord::Migration
def self.up
create_table :linkages do |t|
t.integer :start_id
t.integer :end_id
t.timestamps
end
add_index :linkages, :start_id
add_index :linkages, :end_id
add_index :linkages, [:start_id, :end_id], :unique => true
end
...
end
如果我这样做,现在在控制台中
User.first.dots.first.link!(User.second.dots.second)
一切正常。
我将如何为它创建一个表单(仅使用 dot_id)作为输入?
谢谢!