2

我正在使用acts_as_tree 在我的rails 应用程序中创建文件夹(模型)的树结构。但是在添加acts_as_tree 并且当我尝试创建根文件夹时,出现错误,即 parent 必须存在,表明 parent_id 不能为 nil 。

文件夹.rb:

class Folder < ApplicationRecord
  belongs_to :user
  has_many :assets, :dependent => :destroy
  acts_as_tree
end

文件夹:

class CreateFolders < ActiveRecord::Migration[5.0]
def change
create_table :folders do |t|
  t.string :name
  t.integer :parent_id
  t.integer :user_id

  t.timestamps
end
add_index :folders, :parent_id
  add_index :folders, :user_id
end
end

_form.html.erb :

<%= form_for(folder) do |f| %>
<% if folder.errors.any? %>
<div id="error_explanation">
  <h2><%= pluralize(folder.errors.count, "error") %> prohibited this 
  folder from being saved:</h2>

  <ul>
  <% folder.errors.full_messages.each do |message| %>
    <li><%= message %></li>
  <% end %>
  </ul>
</div>
<% end %>
<div class="field">
<%= f.label :name %>
<%= f.text_field :name %>
</div>
<div class="field">
  <%= f.hidden_field :parent_id,:include_blank=>true %>
</div>

<div class="actions">
  <%= f.submit %>
</div>
<% end %>
4

0 回答 0