Ember.js 使用余烬自动生成ID&;火基

Ember.js 使用余烬自动生成ID&;火基,ember.js,ember-data,firebase,Ember.js,Ember Data,Firebase,我正在尝试为模型生成ID。Ember文档说Ember会自动为其模型生成ID 但当我将数据传递给Firebase并尝试显示它时,ID返回未定义。我的代码有问题吗 <script type="text/x-handlebars" id="stack"> <div class='stack'> <div class="container"> <div class="row"> <div class="span12"

我正在尝试为模型生成ID。Ember文档说Ember会自动为其模型生成ID

但当我将数据传递给Firebase并尝试显示它时,ID返回未定义。我的代码有问题吗

<script type="text/x-handlebars" id="stack">
  <div class='stack'>
    <div class="container">
    <div class="row">
      <div class="span12" style="text-align:center; margin: 0 auto;">

          {{#if isEditing}}
            {{partial 'stack/edit'}}
            <button {{action 'doneEditing'}}>Done</button>
          {{else}}
            <button {{action 'edit'}}>Edit</button>
          {{/if}}

        <h1>{{stack.title}}</h1>
        <h2>at {{stack.date}} <small class='muted'>({{format-date date}})</small></h2>

        <hr>

        <div class='intro'>
          {{stack.location}}
        </div>

        <div class='below-the-fold'>
          {{stack.details}}
        </div>

当您调用
this.store.createRecord()
时,您有一个自动生成
id
的“选项”(请参见),但最终,该职责将委托给
适配器。如果适配器具有
generateIdForRecord()
方法-这将用于创建id。例如,
FixtureAdapter
实现此方法如下(请参阅):


如果您使用的是
FirebaseAdapter
(),它看起来不像是在生成
id
,因此如果您真的希望在客户端上实现此功能,您需要对其进行扩展并自行完成。但如果你真的这样做了,你需要真正问问自己默认的
RestAdapter
也不会为其模型生成ID。

我的问题已通过使用解决

{{#link-to 'stack.index' this.stack.id}}

我可以根据id链接到特定的url。

你能看到firebase提供的id吗?firebase应该为你自动分配id。@Bloomfield是的,它生成的id类似于“JkDmhXBoXbpvFnYd3hX”。我已经获得了要显示的数据,但它们没有链接到适当的id。如何链接到每个id的url?谢谢。我正在使用FirebaseAdapter。我同意Firebase为我生成id,但我不知道如何链接到id的url以显示适当的数据。。。
generateIdForRecord: function(store) {
  return "fixture-" + counter++;
}
{{#link-to 'stack.index' this.stack.id}}