Ruby on rails Rails继承的资源使用
我正在使用Rails 2.3 web服务应用程序。 这是一个很棒的库,是Rails 3的一部分 我试图找出输出结果的最佳实践Ruby on rails Rails继承的资源使用,ruby-on-rails,web-services,ruby-on-rails-3,Ruby On Rails,Web Services,Ruby On Rails 3,我正在使用Rails 2.3 web服务应用程序。 这是一个很棒的库,是Rails 3的一部分 我试图找出输出结果的最佳实践 class Api::ItemsController < InheritedResources::Base respond_to :xml, :json def create @error = nil @error = not_authorized if !@user @error = not_enough_data("item")
class Api::ItemsController < InheritedResources::Base
respond_to :xml, :json
def create
@error = nil
@error = not_authorized if !@user
@error = not_enough_data("item") if params[:item].nil?
@item = Item.new(params[:item])
@item.user_id = @user.id
if !@item.save
@error = validation_error(@item.errors)
end
if !@error.nil?
respond_with(@error)
else
respond_with(@swarm)
end
end
end
提前谢谢 在我们开始之前,先做几件事: 首先。我是鲁比。你知道有一个除非的命令。你可以停止做,如果! 另外,你不必做if!*的双重否定。零如果在场,你会做什么? 您不需要通过将变量设为nil来启动它。除非您在before_链中设置它,否则您将在以后的调用中覆盖它。 您要做的是使用render:json方法。检查API,但它看起来像这样:
render :json => { :success => true, :user => @user.to_json(:only => [:name]) }
授权应该在_filter之前作为回调实现,其余的代码应该被删除并作为继承代码使用。只有输出应该参数化。这里的自定义代码太多
render :json => { :success => true, :user => @user.to_json(:only => [:name]) }