浏览 1825 次
锁定老帖子 主题:关于if xx.save的问题
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-05-21
def create @itouch_service = ItouchService.new(params[:itouch_service]) @member = Member.find(session[:member_id]) @itouch_service.member = @member respond_to do |format| if @itouch_service.save flash[:notice] = 'ItouchService was successfully created.' format.html { redirect_to(new_service_logo_path(@itouch_service)) } format.xml { render :xml => @itouch_service, :status => :created, :location => @itouch_service } else format.html { render :action => "new" } format.xml { render :xml => @itouch_service.errors, :status => :unprocessable_entity } end end end 我测试它的时候写的方法是: def test_create liwan=members(:liwan_member ) post :create,{:itouch_service=>{:provider_type=>'Member',:provider_id=>1}},{:member_id=>liwan.id} assert_response :redirect assert_redirected_to :action=>'new_service_logo' end 但是报错,Expected response to be a <:redirect>,but was <200> 意思就是测试的方法并没有保存成功!所以不会重定向!但是我把这句if @itouch_service.save中的if去掉,把方法改为: def create @itouch_service = ItouchService.new(params[:itouch_service]) @member = Member.find(session[:member_id]) @itouch_service.member = @member @itouch_service.save respond_to do |format| flash[:notice] = 'ItouchService was successfully created.' format.html { redirect_to(new_service_logo_path(@itouch_service)) } format.xml { render :xml => @itouch_service, :status => :created, :location => @itouch_service } end end 这样就好了,测试成功!不知道是不是if的原因还是我写的测试有问题的原因!请帮忙看以下! 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-05-22
请大家看以下!
|
|
返回顶楼 | |
发表时间:2008-05-23
不是有很多高手吗?怎么没人解答啊,也得照顾照顾我们这些小虾吧!郁闷!
|
|
返回顶楼 | |