如题,仅看完了 Guides 里面的起步,按照教程一步一步做了,最后也成功实现了教程的效果。
Guides 里面 Tags Form 使用了嵌套属性(nested_attributes 大概这样叫?),直接在 View 里面 form.fields_for :tags
那叫一个飘逸
然后我想改进下 Tags Form,使用 AJAX 做一个 Add a tag 的按钮,以便省去每次新建一个 Tag 还得重新编辑的麻烦,这里我参看了 http://chloerei.com/2012/04/21/rails-3-2-ajax-guide/
然后这里就有了一个问题,虽然通过 AJAX 成功地添加了一个 input 框,但是因为在服务器端返回的 JS 代码中是获取不到 FormBuilder 实例的所以只能使用 FormHelper 里的 fields_for 方法,而 Helper 的 fields_for 方法生成的 HTML 的 name 属性是不能被 rails 识别并成功保存的。
现在我所能想到的方法就是用 JS 修改 name 属性,但是感觉这个方法实在是太不优雅了……所以求问有没有更好的办法?或者说各位大牛都是怎么实现这种效果的?
不知道叙述准不准确……因为代码写的很乱就不贴了,如果没看懂我再解释……
顺便吐槽下 RoR Guides 与其说是教程不如说是炫技各种方法元编程什么的用得神乎其神也不解释下用法导致咱不翻 API 根本看不懂就算看了 API 是似懂非懂…… 顺便好像 Guides 里面没有 attr_accessible 相关的代码,源码在我这里(Rails 3.2.11)运行会报错。是版本问题么?