在Rails中无法在数据库中创建记录

安东尼卡

我正在创建两个用户之间的友谊实例。当我在Rails控制台中创建它时,一切都按计划进行,但是,当我实际上通过站点创建友谊时,状态栏为空白。如果有人能告诉我为什么会非常感激。

这是我的模型:

class Friendship < ApplicationRecord

  attr_accessor :status, :accepted_at

  belongs_to :user
  belongs_to :friend, :class_name => "User"

  def self.request(user,friend)
    unless user == friend or Friendship.exists?(user: user, friend: friend)
      transaction do
        create(:user => user, :friend => friend, :status => 'pending')
        create(:user => friend, :friend => user, :status => 'requested')
      end
    end
  end

  def self.accept(user,friend)
    transaction do
      accepted_at = Time.now
      accept_one_side(user,friend,accepted_at)
      accept_one_side(friend,user,accepted_at)
    end
  end

  def self.accept_one_side(user,friend,accepted_at)
    request = Friendship.where("user_id = #{user.id} AND friend_id = #{friend.id}")
    request.update_all(:status => 'accepted', :accepted_at => accepted_at)
  end
end

这是我的控制器

class FriendshipsController < ApplicationController
  def create
    friend = User.where(email: params[:friend_email]).first
    Friendship.request(current_user,friend)
    redirect_to user_profile_path(current_user)
  end

  def friendship_params
    params.require(:friendship).permit(:friend_email)
  end
end
dp7

Friendship模型具有attr_accessor :status,它会覆盖ActiveRecord为您的status提供的默认getter setter方法

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Rails创建未在数据库中创建新记录

来自分类Dev

Rails控制台不允许我在数据库中创建记录

来自分类Dev

Codeigniter更新记录-无法在数据库中更新

来自分类Dev

无法在数据库中创建表

来自分类Dev

无法在数据库中创建多个表

来自分类Dev

无法在数据库中创建表

来自分类Dev

无法在数据库中创建表

来自分类Dev

无法在数据库中创建表

来自分类Dev

Rails 5无法存储在数据库中

来自分类Dev

React / Redux:在数据库中创建记录并访问新创建的记录

来自分类Dev

无法在 ruby on rails 中打印数据库记录

来自分类Dev

在数据库中创建表

来自分类Dev

在数据库中创建字段

来自分类Dev

在Heroku数据库中创建记录

来自分类Dev

在数据库中记录数据之前等待验证

来自分类Dev

Rails 5 API - has_many 通过创建操作返回 2 条记录,尽管只有 1 条记录保留在数据库中

来自分类Dev

lastInsertId()在数据库中创建2个重复记录

来自分类Dev

在数据库表中记录位置

来自分类Dev

在数据库中搜索现有记录问题

来自分类Dev

记录未在数据库中更新

来自分类Dev

检查记录是否在数据库中-PHP

来自分类Dev

如何在数据库中记录分数

来自分类Dev

在数据库中编辑记录时保留ID

来自分类Dev

在数据库中插入多条记录

来自分类Dev

在数据库中创建新数据

来自分类Dev

Rails first_or_create!在数据库表中创建空值

来自分类Dev

无法编辑保存在数据库中的数据

来自分类Dev

无法使用json在数据库中插入数据

来自分类Dev

无法在数据库中输入数据