Có bất kỳ plugin nào cho Backbone.js thực hiện những gì "form_for" làm cho Rails không? ví dụ: tôi cung cấp một mô hình và nó cung cấp một DSL để xây dựng một biểu mẫu?Trình tạo plugin biểu mẫu cho Backbone.js?
Trả lời
Tôi nghĩ đó là một con thú khác với giải pháp khác. Tôi đã viết một phần mở rộng backbone.js cho các phần tử biểu mẫu ràng buộc cho các trường Backbone.Model. Hãy tha thứ cho coffeescript nhưng tôi làm như sau bình thường.
class FooView extends MyView
tag: "div"
modelBindings:
"change form input.address" : "address"
"change form input.name" : "name"
"change form input.email" : "email"
render: ->
$(@el).html """
<form>
<input class="address"/>
<input class="name"/>
<input class="email"/>
</form>
"""
super
@
# Instantiate the view
view = new FooView
model: new Backbone.Model
$("body").html(view.el)
Việc thực hiện các mã ràng buộc là
class MyView extends Backbone.View
render: ->
if @model != null
# Iterate through all bindings
for selector, field of @modelBindings
do (selector, field) =>
console.log "binding #{selector} to #{field}"
# When the model changes update the form
# elements
@model.bind "change:#{field}", (model, val)=>
console.log "model[#{field}] => #{selector}"
@$(selector).val(val)
# When the form changes update the model
[event, selector...] = selector.split(" ")
selector = selector.join(" ")
@$(selector).bind event, (ev)=>
console.log "form[#{selector}] => #{field}"
data = {}
data[field] = @$(ev.target).val()
@model.set data
# Set the initial value of the form
# elements
@$(selector).val(@model.get(field))
super
@
Tôi đã viết một bài viết blog nhỏ về vấn đề này ở đây.
http://xtargets.com/2011/06/11/binding-model-attributes-to-form-elements-with-backbone-js/
Không quen thuộc với cách Rails tạo ra các hình thức nhưng tôi đã tạo ra một Backbone tạo thư viện mà có thể làm những gì bạn đang tìm kiếm. Bạn viết một sơ đồ hình thức đơn giản và nó sẽ tạo ra các hình thức cho bạn:
tôi đã viết plugin jquery cho phép bạn để ràng buộc các đối tượng json mẫu. Tôi biết nó không chính xác những gì bạn muốn. Tôi thậm chí còn suy nghĩ về việc mở rộng nó để xây dựng html từ định nghĩa đối tượng ở vị trí đầu tiên nhưng tôi quyết định rằng có thể hơi khó để tạo plugin đủ linh hoạt. Dù sao here là mã với một số lời giải thích. Nó vẫn còn trong phiên bản alpha nhưng nó hoạt động. Cuối cùng, nó hoạt động tốt cho tôi: D
Bạn cũng có thể lấy mã trên jquery plugin page
- 1. Cách tạo biểu mẫu cho plugin cài đặt đường ray
- 2. Trình tạo biểu mẫu Javascript
- 3. Đề xuất cho trình tạo biểu mẫu JavaScript?
- 4. Formtastic trong JavaScript (trình tạo biểu mẫu)
- 5. Plugin mẫu cho Jenkins
- 6. Tạo trường nhập mảng với trình tạo biểu mẫu symfony2
- 7. Cách tạo biểu mẫu Dojo dijoit theo cách lập trình
- 8. Trình tạo biểu mẫu Symfony2 - Xóa nhãn, đặt giữ chỗ
- 9. Xác nhận các biểu mẫu plugin Jenkins với Ruby
- 10. Plugin Xác thực jQuery không xác thực các phần tử biểu mẫu được tạo động
- 11. tạo biểu mẫu đăng ký
- 12. Tạo trình hướng dẫn cho các biểu mẫu Windows trong C#
- 13. Làm cách nào để bạn tạo quy tắc cho biểu mẫu jquery xác thực plugin bằng tên là mảng?
- 14. Gọi JQuery Validate Plugin mà không cần gửi biểu mẫu
- 15. Tạo biểu mẫu cho tiện ích con sưu tập
- 16. Tạo biểu mẫu cho lớp CSS sử dụng simple_form_for
- 17. Có thể tạo biểu mẫu cho lớp đơn giản
- 18. Cách tạo fmt: formatDate làm việc cho biểu mẫu: nhập
- 19. jQuery Validation & Mẫu Plugin
- 20. mẫu Plugin trong C#
- 21. Trình chỉnh sửa Velocity plugin cho Eclipse?
- 22. Tạo cây mã Scala từ plugin trình biên dịch Scala
- 23. Sử dụng các mẫu Jade trong Backbone.js
- 24. Tạo biểu mẫu HTML bằng Jinja2 - Mất
- 25. gửi biểu mẫu theo chương trình
- 26. Tôi có thể cho biết biểu mẫu là biểu mẫu 'chỉnh sửa' trong mẫu không?
- 27. Cách lấy trình xác thực của biểu mẫu
- 28. Tạo gói * mới * trong Trình biên dịch Scala Plugin
- 29. Tạo biểu mẫu tùy chỉnh trong WPF?
- 30. Ruby on Rails: tạo bản ghi cho nhiều mô hình với một biểu mẫu và một biểu mẫu