0

コントローラーアクションの1つで、プロジェクトをユーザーに割り当てています。jsonリクエストに、ユーザーに関する情報とプロジェクトに関する情報を使用して応答したいと思います。現時点では、次のようなすべてのデータベース属性を確認できます。

    # ruby code...
    # current_user.first_name #=> "Nik" db attr
    # current_user.full       #=> "Nik So" virtual attr
    # @project.name           #=> "buy something"

    format.json { render json: {user:current_user), assignable:@project}}

そのため、firebugコンソールでは、コンソールに応答オブジェクトが表示されます。

    // JS code
    success: function(r){window.test = r}

    //in console
    test.user.first_name //"Nik"
    test.assignable.name //"buy something"
    test.user.full       //undefined

JSON応答でモデルと一緒に仮想属性を返すことができる可能性はありますか?

ありがとう!

4

2 に答える 2

0

これは私にとってうまく機能します:

SomeController
  respond_to :json


def some_action
  @response = { :user => current_user, :assignable => @project )
  respond_with @response
end
于 2012-06-22T04:24:09.247 に答える
0

わかりました!ここに解決策があります:

        format.json { render json: {user:current_user.as_json(methods:[:full]), assignable:@project}}
于 2012-06-21T22:43:23.977 に答える