Rails DateTime-NoMethodError(nil:NilClass的未定义方法“ []”)

克里斯蒂亚诺

这是我的模型:

class User < ActiveRecord::Base
has_many :appointments
has_many :doctors, :through => :appointments
end

class Doctor < ActiveRecord::Base
has_many :appointments
has_many :users, :through => :appointments
end

class Appointment < ActiveRecord::Base
belongs_to :doctor
belongs_to :user
end

调用控制器动作的代码:

$.ajax({
  type: "POST",
  url: "/create",
  data: {
    appointment_date: date,
    doctor_id: "1",
    user_id: "1"
  }

// 等等。 });

行动:

def create
    @appointment = Appointment.new(:appointment_date => params[:data][:appointment_date], 
        :hairdresser_id => params[:data][:doctor_id], :user_id => params[:data][:user_id])
    if @appointment.save
        flash[:success] = "Welcome!"
        redirect_to @user
    else
        alert("failure!")
    end
end

我得到了这个错误:

NoMethodError (undefined method `[]' for nil:NilClass)

我正在使用FullCalendar插件,它以这种格式获取日期:

Fri Sep 13 2013 12:00:50 GMT-0400 (EDT)

我将该日期保存到datetime字段中的数据库中。

有任何想法吗?

Bachan Smruty

如果它是约会控制器的create action,那么它将是

$.ajax({
  type: "POST",
  url: "/appointments",
  data: {
    appointment_date: date,
    doctor_id: "1",
    user_id: "1"
  }

在创建动作中

def create
    @appointment = Appointment.new({:appointment_date => params['appointment_date'], 
        :hairdresser_id => params['doctor_id'], :user_id => params['user_id]'})
    if @appointment.save
        #YOUR CODE
    else
        #YOUR CODE
    end
end

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

学习 Ruby on Rails:NoMethodError(未定义方法 `[]' for nil:NilClass):

nil:NilClass Ruby on Rails的未定义方法'>'(NoMethodError)

Heroku + Rails:NoMethodError(nil:NilClass的未定义方法“ /”)

Rails:nil:NilClass的未定义方法

rails 3.2 NoMethodError未定义的方法'slice'为nil:NilClass

rails 3 has_and_belongs_to_many NoMethodError未定义方法`each',用于nil:NilClass

Ruby on Rails 5.2 - NoMethodError(nil:NilClass 的未定义方法`host'):

Rails控制台错误:nil:NilClass的未定义方法“ each”(NoMethodError)

NoMethodError(nil:NilClass的未定义方法“ []”):即使在使用dig时,Ruby on Rails

Rails :: MailersController#preview中的NoMethodError表示nil:NilClass的未定义方法“ activation_token =”

Rails 5序列化数据库列:NoMethodError:nil:NilClass的未定义方法“ [] =”

Rails - NoMethodError:Model.find_by 上 nil:NilClass 的未定义方法 `each'

Rails / RoR-NoMethodError(nil:NilClass的未定义方法“ destroy”)

Rails 6-NoMethodError(nil:NilClass的未定义方法“ titleize”)

Rails +回形针-Projects#index中的NoMethodError-nil:NilClass的未定义方法'image'

为 nil:NilClass 定义的 Rails 未定义方法 `email'

Rails 4 Ajax NoMethodError-我的create.js.erb文件中nil:NilClass:的未定义方法'id'

nil:NilClass rails 的未定义方法 `count'

rails 中 nil:NilClass 的未定义方法“错误”

EasyMarklet Rails gem:nil:NilClass的未定义方法“ []”

nil:NilClass的未定义方法“错误”-Ruby on Rails

Rails:nil:NilClass的未定义方法“ model_name”

Rails:nil:NilClass的未定义方法“ inject”

nil:NilClass Rails的未定义方法“ destroy”

nil:NilClass Rails的未定义方法“ split”

Rails:nil:NilClass的未定义方法“ capitalize”

nil:NilClass的未定义方法`each'-Ruby on Rails

Rails为nil:NilClass使用的未定义方法`id'

Ruby on Rails - nil:NilClass 错误的未定义方法`each'