Ruby on rails 使用rails和引导在modal中编辑

Ruby on rails 使用rails和引导在modal中编辑,ruby-on-rails,twitter-bootstrap,ruby-on-rails-4,Ruby On Rails,Twitter Bootstrap,Ruby On Rails 4,我正在开发一个简单的待办事项列表。我想为每个列表项设置删除和编辑按钮。我还想编辑和创建模式窗口打开。现在这对create是有效的,我不知道如何使它与edit一起工作(现在模态窗口显示,但它是一个create窗口) 这是我的index.html: <div class="container-fluid"> <div class="row"> <h1 class="text-left">Task List</h1>

我正在开发一个简单的待办事项列表。我想为每个列表项设置删除和编辑按钮。我还想编辑和创建模式窗口打开。现在这对create是有效的,我不知道如何使它与edit一起工作(现在模态窗口显示,但它是一个create窗口)

这是我的index.html:

<div class="container-fluid">
    <div class="row">
        <h1 class="text-left">Task List</h1>
        <button type="button" class="btn btn-primary pull-right" data-toggle="modal" data-target="#myModal">New task</button>
    </div>
    <div class="row button-margin ">
    <% @tasks.each do |task| %>
            <div class="panel <%= task_status(task) %>">
                <div class="panel-heading">
                    <%= task.title %>
                    <%= link_to task_path(task),  class:"btn btn-link pull-right", method: :delete, data: { confirm: 'Are you sure?' } do %>
                        <span class="glyphicon glyphicon-remove" style="color:gray"></span>
                    <% end %>
                    <!-- <button type="submit" class="btn btn-link pull-right"> -->
                    <%= link_to edit_task_path(task), class:"btn btn-link pull-right", remote:true, "data-toggle" => "modal",  "data-dismiss=" => "modal", "data-target" => "#myModal" do %>
                        <span class="glyphicon glyphicon-pencil" style="color:gray"></span>
                <!--    </button> -->
                    <% end %>
                </div>
                <div class="panel-body">    
                    <h3><%= task.body %></h3>
                </div>
            </div>
        <% end %>
    </div>

    <%= render "tasks/form" %>
</div>

任务列表
新任务
“模态”、“数据解除=“=>”模态”、“数据目标“=>”#myModal“do%>
这是带有模态的部分形式

  <div id="myModal" class="modal fade" role="dialog">
    <div class="modal-dialog">
      <div class="modal-content">
        <div class="modal-header">
          <button type="button" class="close" data-dismiss="modal">&times;</button>
          <h4 class="modal-title">New task</h4>
        </div>      
        <div class="modal-body">
          <%= form_for @task, :html => {class:"form-horizontal"} do |f|%>
            <div class="form-group">
              <label for="inputTitle" class="col-sm-2 control-label">Title</label>
              <div class="col-sm-10">
                  <%= f.text_field :title, class:"form-control", id:"inputTitle", placeholder:"Title" %>
              </div>
            </div>
            <div class="form-group">
              <label for="inputBody" class="col-sm-2 control-label">Task</label>
              <div class="col-sm-10"> 
                <%= f.text_area :body, class:"form-control", id:"inputBody", placeholder:"Task text", rows:"3"%>
              </div>
            </div>
            <div class="form-group">
              <label for="dueDate" class="col-sm-2 control-label">Date</label>
              <div class="col-sm-10">
                <%= f.datetime_local_field :dueDate, class:"form-control", id:"dueDate"%>
              </div>
            </div>
            <div class="modal-footer">
              <%= f.submit class:"btn btn-primary"%>
              <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
            </div>
          <% end %>
        </div>
      </div>
    </div>
  </div>

&时代;
新任务
{class:“水平形式”}do | f |%>
标题
任务
日期
接近
还有任务控制工程师:

class TasksController < ApplicationController
    def index
        @tasks=Task.all
        @task = Task.new
    end

    def new
        @task=Task.new
    end

    def show
        @task=Task.find(params[:id])
    end

    def edit
        @task=Task.find(params[:id])
    end

    def create
        @task=Task.new(task_params)
        if @task.save
            redirect_to tasks_path
        else
            render 'new'
        end
    end

    def update
        @task = Task.find(params[:id])

        if @task.update(task_params)
            redirect_to tasks_path
        else
            render 'edit'
        end
    end

    def destroy
        @task = Task.find(params[:id])
        @task.destroy

        redirect_to tasks_path
    end

    private
        def task_params
            params.require(:task).permit(:title, :body, :creationDate, :dueDate)
        end
end
class TasksController

谁能解释我做错了什么?Wy表单打开,但未填充所选任务?

您正在使用
链接中的
远程:true
编辑任务路径(任务)
。这样,任务将异步加载,页面将不会刷新。这就是为什么你的表格没有填写

另外,使用相同的链接加载任务并打开模式。我认为您需要更好的方法。

在edit.html.erb中

<%= render "tasks/form" %>


在index.html.erb中为编辑页面添加ajax调用,获取编辑页面并在模态中显示它。

您有多少模态?您是否有一个用于
create
和一个用于
edit
或在同一模式下运行这两个功能?你所说的模式是指引导模式,对吗?是的,它的引导模式,现在我有一个用于编辑和创建。删除remote:true没有帮助。