1

だから私は、コミックストリップを作成するためのいくつかの即興プロンプトをユーザーに提示する小さなおもちゃの残り火アプリを作成しています。一定の時間が経過すると、ユーザーは完成したコミックをアップロードできるようになります。

ユーザーが完成したコミックをアップロードするためにフォームを事前設定するところまで、すべてが機能しています。

これまでのところ、すべてが 1 つのルート、コントローラー、およびモデル (プロンプト) です。最後に、彼らは本当に漫画のレコードで作業する必要があります. 現在、すべてが同じテンプレートにあり、アップロード フォームをビューに入れています。

App.UploadComicView = Ember.View.extend
  templateName: "upload_comic"
  tagName: "form"
  classes: ['form-horizontal']

  submit: ->
    @get('controller').uploadComic(@get('comicTitle'))
    false

次のモデルの場合:

App.Comic = DS.Model.extend
  title: DS.attr('string')

そして、prompts_controller で次のことを試みました。

uploadComic: (title) ->
  App.Comic.createRecord(title: title)
  @get('store').commit()

ただし、コミック コントローラーへの作成要求ではなく、更新アクションをバックエンドのプロンプト コントローラーに送信しようとします。

したがって、コミック用に別の ember コントローラー/テンプレート/モデル/ルートを用意する必要があるようですが、新しいものを作成するために、チャレンジの最後にプロンプ​​ト コントローラーからコミック コントローラーに移動する方法がわかりません。データベース内のコミック オブジェクト。さらに悪いことに、選択したプロンプトを現在のプロンプト コントローラーから新しいコンテキストに送信する必要もあります。

続行するための最良の方法は何ですか?

4

1 に答える 1

1

aを実行すると、リクエスト bodyでtoApp.Comic.createRecordが実行されます。これは、どのコントローラー/場所から行うかに関係ありません。他に行くと言う事ですか?その場合は jsbin を投稿してください。POST/comics{title: 'your title'}

他のコントローラーと通信/アクセスする必要がある場合はneeds、他のコントローラー内で宣言を使用できます。

needs: 'comics'
comicsBinding: 'controllers.comics'

this.get('comics')内部からコミック コントローラーにアクセスできるようになりました。

于 2013-07-03T05:46:49.927 に答える