0

私のアプリには、テンプレートとドキュメントがあります。テンプレートからドキュメントを作成できるようにしたいです。つまり、ユーザーはテンプレートの表示ページに移動し、ボタンをクリックすると、テンプレートからドキュメント テキストが事前に入力された新しいドキュメント ページにリダイレクトされます (テキストを事前に入力するだけでよく、ドキュメントが作成されたテンプレートを知っているかどうかは気にしません)。

しかし、テキストを新しいドキュメント ページに渡すにはどうすればよいでしょうか。

4

2 に答える 2

0

私は最終的に次のことをしました:

App.Router.map ->
  @resource 'documents', ->
    @route 'new'
    @route 'new_from_template', path: '/new/:template_id'

App.DocumentsNewFromTemplateRoute = Ember.Route.extend
  model: (params) ->
    model = App.Document.createRecord()

    if params.template_id
      App.Template.find(params.template_id).then (template) ->
        model.set 'text', template.get('text')

    model

  setupController: (controller, model) ->
    if model._reference.type == App.Template
      model = @model(template_id: model.id)

    @currentModel = model
    @controllerFor('documentsNew').set 'model', model

  renderTemplate: ->
    @render 'documents/new'

そして、テンプレート用の新しいドキュメント フォームにリンクするには、次のようにします。

{{#linkTo 'documents.new_from_template' template}}Create a document{{/linkTo}}
于 2013-07-06T12:41:32.760 に答える