浏览 2958 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (6)
|
|
---|---|
作者 | 正文 |
发表时间:2010-01-22
最后修改:2010-01-22
在2.3.5里通过了,其他版本就不知道了。 module StubActiveRecord class Base def save return valid? end def save!;end def new_record?;false;end def update_attribute;end def self.human_name;"#{self.name.underscore}";end def self.human_attribute_name(col) "#{self.name.underscore}.#{col}" end def self.self_and_descendants_from_active_record;[self];end #stub methods above include ActiveRecord::Validations def initialize(params={}) @errors = ActiveRecord::Errors.new(self) end end end require 'stub_active_record/base' class UserRemote < StubActiveRecord::Base NECESSARY_ATTR = [:name] attr_accessor *NECESSARY_ATTR validates_presence_of *NECESSARY_ATTR validate :validate_via_api def initialize(params={}) super NECESSARY_ATTR.each do|attr| instance_variable_set(:"@#{attr}", params[attr]) end end protected def validate_via_api # add other errors here. end end class UsersController < ApplicationController def new @user = UserRemote.new end def create @user = UserRemote.new(params[:user_remote]) if @user.save #blablabla else render :action => 'new' end end end <% form_for @user do |form| %> <%= form.error_messages %> <%= form.text_field :name %> <% end %> 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |