【发布时间】:2013-09-21 07:14:14
【问题描述】:
我有一个使用 ember-rails gem 的 Ember 应用程序,它可以创建记录并将其保存到数据库中。除了模型的一个属性之外的所有属性都可以在模板中呈现。由于某种原因,当 Ember 请求它时,没有发送“图像”属性。
new_route.js.coffee
App.NewRoute = Ember.Route.extend
model: ->
App.Post.createRecord()
setupController: (controller, model) ->
controller.set('content', model)
new_controller.js.coffee
App.NewController = Ember.ObjectController.extend
templateName: "new"
content:
title: @title
image: @image
body: @body
actions:
createPost: ->
@content.save()
post_route.js.coffee:
App.PostRoute = Ember.Route.extend
model: (params) ->
App.Post.find(params.post_id)
post.hbs:
<h1>{{title}}</h1>
{{imgtag image}}
{{markdown body}}
<p>{{author}}</p>
post.js.coffee
App.Post = DS.Model.extend
title: DS.attr 'string'
image: DS.attr 'string'
body: DS.attr 'string'
author: DS.attr 'string'
模型在 Rails 控制台中具有正确的属性,但在 Ember 中对它的请求返回的模型甚至不存在该属性。
【问题讨论】:
-
您的 API 调用是否返回
image的值? -
@chopper 它返回模型的 JSON,但不存在
image属性。 -
那么这是您的 Rails 方面的问题。您是否确保在序列化程序中包含 :image ?能贴出相关代码吗?
-
@chopper 完美。序列化程序中缺少它。谢谢你的帮助,我现在觉得有点傻。
-
没问题。我会将其添加为答案,以便我们结束此问题。
标签: ruby-on-rails ember.js ember-data ember-rails