0

小さなおもちゃのプロジェクトとして、EmberJS で単純なカレンダーを作成しようとしています (Fixture アダプターを使用した単なるフロントエンド アプリ)。

2 つのモデルを定義する必要があると思います。「予定」モデルとの hasMany 関係を持つ「日」モデル。

私が抱えている問題は、アプリケーションの起動時にすべての「日」モデルを作成することです。どうすればそれについて行くでしょうか?月ビュー (現在の月から開始) が必要なので、定義済みの FIXTURES を使用して「日」を作成したくありません。

アプリケーションの初期化時にプログラムで日を作成するにはどうすればよいですか? コントローラーのメソッドによって呼び出される別の関数を使用して、ストアのロードイベントでそれを実行しようとしました(データをロードするように見えますが、何らかの理由でテンプレートからアクセスできません...)。

毎日オブジェクトを作成することで正しい道を進んでいますか、それともこれを行うためのより「Ember」な方法はありますか?

4

2 に答える 2

1

あなたの質問に答えるには、 「毎日オブジェクトを作成することは正しい方法ですか、それともこれを行うためのより「Ember」な方法はありますか?」Ember の方法、オブジェクトの方法です。つまり、YES です。

「どうやってやるの?」に答えるために。質問: 多くの方法があります。1 つの方法は、Ember ArrayController と Date オブジェクトまたはその他の日付ライブラリ (moment.js が優れています) を使用してすべての「カレンダー日付」を生成し、データを表示する CollectionView をレンダリングすることです。各暦日は、その日のユーザーの「コンテンツ」を表すモデルにバインドする必要があります。次に、モデル (毎日のデータ) を ArrayController にロードする必要があります。ルーティングと「ニーズ」が正しければ、データの読み込みが完了すると、毎日のデータが表示されるはずです。

これも役立つ場合があります。「カレンダー」のモデルは (Date オブジェクトによって) 既に実装されています。それを使用して日のリストを生成し、フィクスチャ データをそれらにバインドする必要があります。したがって、「カレンダーの日付」ごとにユーザーのデータを表すフィクスチャのみが必要になります。各「カレンダー日付」モデルには、多くの「カレンダー項目」があります。

私は現在、カレンダー コンポーネントを備えた Ember アプリに取り組んでおり、同様に開始するために取り組んでいます。これがあなたが転がるのに役立つことを願っています!

于 2013-06-14T16:15:52.930 に答える
0

これを行うにはさまざまな方法がありますが、おもちゃのプロジェクトのために、ApplicationRoute でそれらを作成することができます。

App.ApplicationRoute = Ember.Route.extend({

  setupController: function(model, controller) {
    //create your days here
    App.Day.createRecord({key: 'value'});
  }

});

次に、アプリケーションの別の場所で App.Day.find() を呼び出すと、最近の日付が表示されます。

于 2013-06-14T11:07:47.133 に答える