我正在尝试为api博客编写Ruby代码
我已将ruby代码写为
Loading development environment (Rails 2.3.8)
>> class Blogpost < ActiveRecord::Base
>> has_many :taggings
>> has_many :tags,:through => :taggings
>> end
=> nil
>> class Taggings < ActiveRecord::Base
>> belongs_to :blogpost
>> belongs_to :tag
>> end
=> nil
?> @tags=Tag.find_by_name("blog7")
=> #<Tag id: 4, name: "blog7">
>> @taggings=Tagging.find_by_id(@tags.id)
=> #<Tagging id: 4, tag_id: 1, taggable_id: 4, taggable_type: "Blogpost", created_at: "2010-09-02 10:03:08">
>> @blogposts=Blogpost.find_by_id(@taggings.taggable_id)
=> #<Blogpost id: 4, title: "blog post4", type: nil, slug: "blog-post4", description: "<p>BLOG desc 4</p>", meta: nil, user_id: 1, category_id: 379344121, times_viewed: 2, comments_count: 0, published: 1, created_at: "2010-09-02 10:03:08", updated_at: "2010-09-03 05:11:46", delta: false>
这种编写Ruby代码的方式是否是API的正确过程。
请提出建议..
答案 0 :(得分:0)
我不确定您在API的上下文中的含义。如果你的意思是,这是定义ActiveRecord类的正确方法,那么是的,你做到了。如果你的意思是,这是使用find api查找对象的最佳方法,我唯一的建议是它将默认为id,因此find_by_id
冗余Tagging.find @tag.id
会起作用,通常在执行时从控制器查找它更有可能通过参数Tagging.find params[:id]