lib/azeroth/resourceable/class_methods.rb in azeroth-0.10.0 vs lib/azeroth/resourceable/class_methods.rb in azeroth-0.10.1

- old
+ new

@@ -12,139 +12,10 @@ # @param (see Resourceable.resource_for) # @option (see Resourceable.resource_for) # @return (see Resourceable.resource_for) # # @see (see Resourceable.resource_for) - # - # @example Controller without delete - # class DocumentsController < ApplicationController - # include Azeroth::Resourceable - # - # resource_for :document, except: :delete - # end - # - # @example Controller with only create, show and list - # class DocumentsController < ApplicationController - # include Azeroth::Resourceable - # - # resource_for :document, only: %w[create index show] - # end - # - # @example complete example gmaes and publishers - # class PublishersController < ApplicationController - # include Azeroth::Resourceable - # skip_before_action :verify_authenticity_token - # - # resource_for :publisher, only: %i[create index] - # end - # - # class GamesController < ApplicationController - # include Azeroth::Resourceable - # skip_before_action :verify_authenticity_token - # - # resource_for :game, except: :delete - # - # private - # - # def games - # publisher.games - # end - # - # def publisher - # @publisher ||= Publisher.find(publisher_id) - # end - # - # def publisher_id - # params.require(:publisher_id) - # end - # end - # - # ActiveRecord::Schema.define do - # self.verbose = false - # - # create_table :publishers, force: true do |t| - # t.string :name - # end - # - # create_table :games, force: true do |t| - # t.string :name - # t.integer :publisher_id - # end - # end - # - # class Publisher < ActiveRecord::Base - # has_many :games - # end - # - # class Game < ActiveRecord::Base - # belongs_to :publisher - # end - # - # class Game::Decorator < Azeroth::Decorator - # expose :id - # expose :name - # expose :publisher, decorator: NameDecorator - # end - # - # @example requesting games and publishers - # post "/publishers.json", params: { - # publisher: { - # name: 'Nintendo' - # } - # } - # - # publisher = JSON.parse(response.body) - # # returns - # # { - # # 'id' => 11, - # # 'name' => 'Nintendo' - # # } - # - # publisher = Publisher.last - # post "/publishers/#{publisher['id']}/games.json", params: { - # game: { - # name: 'Pokemon' - # } - # } - # - # game = Game.last - # - # JSON.parse(response.body) - # # returns - # # { - # # id: game.id, - # # name: 'Pokemon', - # # publisher: { - # # name: 'Nintendo' - # # } - # } - # - # @example Controller with before_save - # class PokemonsController < ApplicationController - # include Azeroth::Resourceable - # - # resource_for :pokemon, - # only: %i[create update], - # before_save: :set_favorite - # - # private - # - # def set_favorite - # pokemon.favorite = true - # end - # - # def pokemons - # master.pokemons - # end - # - # def master - # @master ||= PokemonMaster.find(master_id) - # end - # - # def master_id - # params.require(:pokemon_master_id) - # end - # end + # @example (see Resourceable.resource_for) def resource_for(name, **options) Builder.new( self, name, Azeroth::Options.new(options) ).build end