Ruby on rails 无法使用rails 5中的has many TO保存记录

Ruby on rails 无法使用rails 5中的has many TO保存记录,ruby-on-rails,ruby,Ruby On Rails,Ruby,我无法找到记录无法保存到数据库中的原因…请帮助我找到我在模型和控制器中做错了什么 User.rb …等等 InterestedUsersList.rb 等等。。。 我使用的方法: # add interested user def add_interested_user(user) puts "this is user id: #{user.id} " interestedUser = self.interested_users_lists.build(user_id: u

我无法找到记录无法保存到数据库中的原因…请帮助我找到我在模型和控制器中做错了什么

User.rb …等等

InterestedUsersList.rb 等等。。。 我使用的方法:

  # add interested user
  def add_interested_user(user)
   puts "this is user id:  #{user.id} "
   interestedUser = self.interested_users_lists.build(user_id: user.id)
   interestedUser.save
   puts "this is #{interested_users_lists.first.user_id} "
  end
迁移文件 开发日志

  Post Load (0.1ms)  SELECT  "posts".* FROM "posts" WHERE "posts"."id" = ? ORDER BY "posts"."created_at" DESC LIMIT ?  [["id", 1], ["LIMIT", 1]]
this is user id:  2

   **(0.0ms)  begin transaction
   (0.1ms)  rollback transaction** _why???_

  InterestedUsersList Load (0.1ms)  SELECT "interested_users_lists".* FROM "interested_users_lists" WHERE "interested_users_lists"."post_id" = ?  [["post_id", 1]]
this is 2
Redirected to http://localhost:3000/users/posts/2
Completed 302 Found in 77ms (ActiveRecord: 4.9ms)


Started GET "/users/posts/2" for ::1 at 2016-12-27 03:04:33 -0800

更改此方法不需要保存直通记录

# add interested user
def add_interested_user(user)
  self.interested_users << user
end
#添加感兴趣的用户
def添加感兴趣的用户(用户)

self.interest_用户更改此方法您不需要保存直通记录

# add interested user
def add_interested_user(user)
  self.interested_users << user
end
#添加感兴趣的用户
def添加感兴趣的用户(用户)

自利用户使用save!在你的方法上,你会得到一个回溯。如果您仍然不知道如何修复iTunes,请将其张贴在此处使用save!在你的方法上,你会得到一个回溯。如果您仍然不知道如何修复,请在此处发布。使用self是一种很好的做法。如果您正在将数据分配给对象,则可以在读取data@DeepakMahakale这就是我得到的回报。。。我认为这行不通<代码>验证失败:密码不能为空,密码太短(至少8个字符)应用程序帧所有帧Post#添加#感兴趣的#用户应用程序/models/Post.rb,第182行PostsController#感兴趣的应用程序/controllers/posts#controller.rb,第141行
如果要将数据分配给对象,最好使用self。如果要读取数据,可以省略selfdata@DeepakMahakale这就是我得到的回报。。。我认为这行不通<代码>验证失败:密码不能为空,密码太短(至少8个字符)应用程序帧所有帧Post#添加感兴趣的用户app/models/Post.rb,第182行PostsController#感兴趣的app/controllers/posts\u controller.rb,第141行
class CreateInterestedUsersLists < ActiveRecord::Migration[5.0]
  def change
    create_table :interested_users_lists do |t|
      t.integer :user_id
      t.integer :post_id

      t.timestamps
    end
  end
end
def interested
 @post.add_interested_user(current_user) #cannot be saved...
end
...
private
 def post_params
  params.require(:post).permit(:subject, :price, :category, :street_address, :city, :state, :zip, :condition, :payment_method, :content, post_attachments_attributes: [:id, :post_id, :avatar], 
                                interested_users_lists_attributes: [:id, :post_id, :user_id])
end
  Post Load (0.1ms)  SELECT  "posts".* FROM "posts" WHERE "posts"."id" = ? ORDER BY "posts"."created_at" DESC LIMIT ?  [["id", 1], ["LIMIT", 1]]
this is user id:  2

   **(0.0ms)  begin transaction
   (0.1ms)  rollback transaction** _why???_

  InterestedUsersList Load (0.1ms)  SELECT "interested_users_lists".* FROM "interested_users_lists" WHERE "interested_users_lists"."post_id" = ?  [["post_id", 1]]
this is 2
Redirected to http://localhost:3000/users/posts/2
Completed 302 Found in 77ms (ActiveRecord: 4.9ms)


Started GET "/users/posts/2" for ::1 at 2016-12-27 03:04:33 -0800
# add interested user
def add_interested_user(user)
  self.interested_users << user
end