mysql数据库插入数据为空_mysql – “.save”仅在数据库中插入空值

我正在尝试为医院制作RoR应用程序,因此它有患者,医生,办公室等.

我遇到的问题是,在患者“注册”时,我无法将新患者保存在数据库中.实际上,尽管我已经检查过属性是否正常(它只是一个名称和个人ID),但一旦方法被删除,数据库中只会出现一个带有“< null>”的新行.而不是实际的属性值.这是方法:

def pat_create

pName = params[:name].to_s

id = params[:pid].to_s.to_i

pat = Patient.where(:pID => id).first

if pat == nil

pat = Patient.new(:name => pName, :pID =>id)

pat.save

end

end

此外,这是它构造的查询:

INSERT INTO `patients` (`created_at`, `name`, `pID`, `updated_at`) VALUES ('2013-05-20 02:04:28', NULL, NULL, '2013-05-20 02:04:28')

在其他视图收集以下形式的:name和:pid信息之后调用此方法:

Register

毋庸置疑,pat.errors.empty?是的,pat.save也是如此.

知道为什么会这样吗?

这是患者模型:

class Patient < ActiveRecord::Base

attr_accessible :name, :pID

attr_accessor :name, :pID

has_many :appointments

validates_presence_of :name

validates :name, :format => {:with=> /^[a-zA-Z\s\D]+$/}

validates_presence_of :pID

validates_numericality_of :pID

validates_inclusion_of :pID, :in => 100000..9999999999

end

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值