{"id":22144954,"url":"https://github.com/jim/siesta","last_synced_at":"2025-07-26T02:30:58.499Z","repository":{"id":66404221,"uuid":"35652","full_name":"jim/siesta","owner":"jim","description":"A little REST for your controllers","archived":false,"fork":false,"pushed_at":"2010-02-01T20:48:03.000Z","size":600,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2023-04-11T04:52:09.524Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jim.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2008-07-20T18:46:04.000Z","updated_at":"2019-08-13T13:29:32.000Z","dependencies_parsed_at":"2023-02-20T03:30:38.097Z","dependency_job_id":null,"html_url":"https://github.com/jim/siesta","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jim%2Fsiesta","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jim%2Fsiesta/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jim%2Fsiesta/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jim%2Fsiesta/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jim","download_url":"https://codeload.github.com/jim/siesta/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227641226,"owners_count":17797837,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-01T22:36:28.701Z","updated_at":"2024-12-01T22:36:29.342Z","avatar_url":"https://github.com/jim.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"Siesta: A little REST for your controllers\n=================\n\nThis plugin provides all the standard REST actions to controllers. Up until version 0.2, attributes to be passed to the model during mass assignment had to be explicitly defined, but I've now decided to reverse this decision.\n\nThere are several other excellent plugins that provide the same basic functionality (make_resourceful, restful_controller), but I don't really like defining my controller behavior using a DSL or using before/after filters to perform work that really ought to be done in the body of an action method. \n\nI prefer writing my controllers in Ruby, and using language level mechanisms such as redefining a method and calling super as needed. I find this makes it easier to understand what an action is doing, and also allows for the most flexibility.\n\nThis is the stable branch, which should always have good spec coverage. To run the specs, run rake spec from inside test_app. New in this version (0.3) is a new syntax that uses a modified subclassing in place of the old declarative syntax. This change was made to allow Siesta controllers to be easily sub-classed themselves.\n\n\nExample\n=======\n\nThe simplest use case is like so:\n\n  class PencilsController \u003c Siesta::Controller(:pencils)\n  \n  end\n  \nNamespaced models are supported, and nested resources work as you'd expect:\n  \n  class SpoonsController \u003c Siesta::Controller(Dinner::Napkin, Fancy::Spoon)\n  \n  end\n  \nFor more examples, check out the specs. They are located in test_app/specs.\n\n\nInspiration\n===========\n\nSiesta was originally influenced by Brendan Baldwin's rest_easy (http://github.com/brendan/rest_easy). Siesta was created partially as a personal exercise to force myself to really think about how the ultimate REST controller library would behave, at least from my point of view.\n\n\nCopyright (c) 2009 Jim Benton, released under the MIT license","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjim%2Fsiesta","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjim%2Fsiesta","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjim%2Fsiesta/lists"}