2013-07-30 2 views
1

My Rails 앱에 작업 및 작업 has_many Taskups (업데이트 또는 의견)이 있습니다. 작업 목록이 표시된 페이지를 표시하는 동안 Bootstrap 모달 목록에 기존 Taskups를 추가하고 새 Taskup을 추가 할 수 있습니다.레일스 잘못된 모델을 업데이트하려고하는 부트 스트랩 모달

<a data-toggle="modal" href="#task-<%= task.id %>" class="btn btn-primary btn-mini" type="button">Comments</a> 
<%= render :partial => "taskups/comments", locals: {task: task} %> 

모달 팝 - 업하고 해당 작업에 대한 Taskups의 목록을 볼 수 있습니다 : 작업이 모달을 실행 목록 내부

는 코드입니다. 새로운 Taskup을위한 입력 필드가 있습니다.

이 모달 코드입니다 : 당신이 입력 상자에 텍스트를 입력하고 "코멘트 저장"버튼을 클릭하면,

<div id="task-<%= task.id %>" class="modal" style="display: none;"> 
<%= simple_form_for :taskup, :url => {:action => :create} do |f| %> 
    <div class="modal-header"> 
    <a class="close" data-dismiss="modal">&#215;</a> 
    <h3>Comments</h3> 
    </div> 

    <div> 
    <% task.taskups.each do |taskup| %> 
     * 
     <%= taskup.comments %> 
     </br> 
    <% end %> 
    </div> 

    <div class="modal-body"> 
    <%= f.input :comments, :label => 'New Comment:' %> 
    <%= f.hidden_field :task_id, :value => task.id %> 
    <%= f.hidden_field :user_id, :value => current_user.id %> 
    </div> 
    <div class="modal-footer"> 
    <%= f.submit "Save Comment", :class => "btn-primary" %> 
    <a class="btn" data-dismiss="modal" href="#">Close</a> 
    </div> 
<% end %> 
</div> 

하지만, 당신이 볼 다음 화면은 작업의 입력 형태입니다.

코드에서 새 Taskup 대신 새 Task를 추가하려고합니다.

도움 주셔서 감사합니다.

업데이트 1

이것은 Taskups의 컨트롤러 코드입니다.

class Taskup < ActiveRecord::Base 

    belongs_to :taskstatus 
    belongs_to :task 
    belongs_to :user 

    default_scope { where(tenant_id: Tenant.current_id) } 

    default_scope :order => 'taskup_date ASC' 
end 
+0

컨트롤러 및 모델 코드를 붙여 넣으이 Taskups 모델입니다

# POST /taskups # POST /taskups.json def create @taskup = Taskup.new(params[:taskup]) respond_to do |format| if @taskup.save if @taskup.taskstatus_id != nil Task.find(@taskup.task_id).update_attributes(:taskstatus_id => @taskup.taskstatus_id) end format.html { redirect_to @taskup, notice: 'Task Update was successfully created.' } format.json { render json: @taskup, status: :created, location: @taskup } else format.html { render action: "new" } format.json { render json: @taskup.errors, status: :unprocessable_entity } end end end 

(그러나, 나는 작업 컨트롤러가 어떻게 든이라고 점점 생각). –

+0

컨트롤러와 모델을 제 질문에 추가했습니다. – Reddirt

+0

글쎄, 우선, 양식은 업데이트가 아니라 생성 액션을 호출합니다. – MurifoX

답변

1

이 근무 :

<%= simple_form_for :taskup, :url => url_for(:action => 'create', :controller => 'taskups'), :method => 'post' do |f| %>