1

我有一个ajax表单:

_form.html.erb:

<%= form_for @innmelding, :remote => true, :html => { :id => 'kurs-form' } do |f| %>

innmeldings_controller.rb:

def create
  @innmelding = Innmelding.new( params[:innmelding] )
  flash[:notice] = "Lagret" if @innmelding.save
  respond_with( @innmelding, :layout => !request.xhr? )
end

innmelding.rb:

class Innmelding < ActiveRecord::Base      
  belongs_to :laerer, :foreign_key => "ansvarlig"
  belongs_to :laerer, :foreign_key => "overordnet"
  has_many :kurss
  validates_presence_of :dager_fra
end

宝石文件:

source 'http://rubygems.org'
gem 'rails', '3.1.0.rc4'

gem 'sqlite3'
gem 'mysql2'

gem 'sass'
gem 'coffee-script'
gem 'coffeebeans'    
gem 'uglifier'

gem 'jquery-rails'

gem 'devise'
gem 'cancan'
gem 'haml'
gem 'event-calendar', :require => 'event_calendar'
gem 'therubyracer'

当“dager_fra”字段为空时,我收到以下错误:

“错误 NoMethodError:未定义的方法 `bytesize' for :dager_fra:Symbol”

我正在使用 rails 3.1-rc4(rc1 上的相同错误)和 ruby​​ 1.9.2。我怀疑它与ruby 1.9有关。还没有设法让它在 ruby​​ 1.8 上运行,所以我还没有验证这一点(我想我读过一些地方,bytesize 方法被移出了某些版本的轨道,因为它现在是 Ruby 1.9 的一部分)。

4

1 回答 1

0

这是 Rails 问题,请看这里https://github.com/rails/rails/issues/1730

试试你的 gemfile

gem 'rails', '3.1.0.rc4', :git => "https://github.com/rails/rails.git", :branch => "3-1-stable"

这对我有帮助。

于 2011-07-12T13:39:09.923 回答