gpt4 book ai didi

mysql - 当我使用Ruby添加记录时,数据库中的主键是32字节空白

转载 作者:行者123 更新时间:2023-11-29 21:59:50 25 4
gpt4 key购买 nike

这是我用来向数据库添加记录的代码:

 def vis_attribute(email){
:v_uid => 'default_visitor',
:v_name => 'default_visitor',
:password_expiration=>(Time.now + 60 * 60 * 24),
:last_used_timestamp=>(Time.now - 60 * 60 * 24),
:v_login_id => email,
:v_password => 'MMM',
}

class vis < ActiveRecord::Base
def add
@vis = create vis_attribute('AAABBB@MAI.COM')
end
end

v_uid 是主键。

运行后,字段@vis.v_id0

我正在运行 MySQL 版本 5.6.22-enterprise-commercial-advanced MySQL Enterprise。

我的 Gemfile 是:

gem 'activerecord', '~> 3.0'
gem 'mysql', '2.9.1'

数据库中的 v_id 定义 v_uid | varchar(32) | varchar(32) |否 |优先原则 |空 | |有谁知道这是什么原因吗?

最佳答案

我认为 ActiveRecord 3 有一些魔力。

我按照如下方式解决了这个问题。

def add
@vis = new vis_attribute('AAABBB@MAI.COM')
@vis.v_uid="default_visitor"
@vis.save!
end

无论您是否设置self.primary_key = :visitor_uidnew方法都会忽略主键。

任何人都知道为什么 ActiveRecord 中的方法 new 会这样做。

关于mysql - 当我使用Ruby添加记录时,数据库中的主键是32字节空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32757815/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com