https://github.com/bootstrap-ruby/bootstrap-editable-rails
In-place editing with Twitter Bootstrap for Rails
https://github.com/bootstrap-ruby/bootstrap-editable-rails
Last synced: 5 months ago
JSON representation
In-place editing with Twitter Bootstrap for Rails
- Host: GitHub
- URL: https://github.com/bootstrap-ruby/bootstrap-editable-rails
- Owner: bootstrap-ruby
- License: mit
- Created: 2012-12-06T12:09:01.000Z (about 13 years ago)
- Default Branch: master
- Last Pushed: 2020-01-27T15:26:23.000Z (almost 6 years ago)
- Last Synced: 2025-03-28T06:07:20.482Z (10 months ago)
- Language: JavaScript
- Homepage: http://rubygems.org/gems/bootstrap-editable-rails
- Size: 682 KB
- Stars: 216
- Watchers: 8
- Forks: 52
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Bootstrap Editable Rails
In-place editing with Twitter Bootstrap for Rails 3/4
This gem is based on X-editable (v1.5.1) which is the new version of Bootstrap Editable.
https://github.com/vitalets/x-editable
## Demo & Documents
See http://vitalets.github.com/x-editable
## Installation
Add this line to your application's Gemfile:
gem 'bootstrap-editable-rails'
And then execute:
$ bundle
## Usage
### JavaScript & Stylesheet
Write the top of `app/assets/javascripts/application.js` like this:
```javascript
//= require jquery
//= require jquery_ujs
//= require bootstrap
//= require bootstrap-editable
//= require bootstrap-editable-rails
//= require_tree .
```
and need to load `bootstrap-editable.css` at the place where you like.
### HTML
Follow the documents of X-editable above.
Additional required attribute is `resource`.
```html
superuser
```
then, sends `PUT /posts/1` request with the body:
```
post[username]=superuser
```
When using `textarea` type, `textarea_format` helper method for formatting line breaks is available.
```html
<%= textarea_format(@post.body) %>
```
### Controller
PostsController receives the parameters
```
{ "id" => "1", "post" => { "username" => "superuser" } }
```
and must respond with 2xx (means _success_) status code if successful.
For example, scaffold works well by 204 because default dataType is json.
```ruby
def update
@post = Post.find(params[:id])
respond_to do |format|
if @post.update_attributes(params[:post])
format.html { redirect_to @post, notice: 'Post was successfully updated.' }
format.json { head :no_content } # 204 No Content
else
format.html { render action: "edit" }
format.json { render json: @post.errors, status: :unprocessable_entity }
end
end
end
```
#### Note
The scaffold above will not work with jQuery 1.9.0 (included in jquery-rails 2.2.0) because of jQuery's bug.
https://github.com/jquery/jquery/pull/1142
If you use the old version of jQuery, please update jquery-rails to avoid it.
## Contributing
1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request