Множество принадлежи към асоциации с Batman.js

Просто исках да проверя дали няма нищо лошо в това моделът да има 2 belongsTo:

@belongsTo 'claim'
@belongsTo 'buyer'

Питам, защото имам това и запазването не създава json, който трябва:

create: =>
    alert @claim
    CT.Buyer.find $("#buyer_id").val(), (err, buyer) =>
        @bid.set 'claim', @claim
        @bid.set 'buyer', buyer
        @bid.save()

    return false

alert @claim ми показва ясно, че @claim е правилно и съдържа искането, което очаквам. Но json, изпратен при извикване на save(), изглежда така:

{buyer_id:52c86c74-2425-11e1-8b23-0021cc5da1e1, amount:123}

Не изпраща claim_id по някаква причина.


person Tristan Sloughter    schedule 16.12.2011    source източник


Отговори (2)


Добре е да имате няколко асоциации за принадлежност към модел. Сигурни ли сте, че купувачът, който се опитвате да намерите, съществува? Винаги трябва да обработвате err вътре в find обратни извиквания.

person ktusznio    schedule 20.12.2011

encode-in claim_id ли сте в кода на вашия модел? Batman.Model няма да изпрати обратно стойности в своя JSON, освен ако не използвате encode. Например:

class App.Bid extends Batman.Model
  @belongsTo 'claim'
  @belongsTo 'buyer'
  @encode 'claim_id', 'buyer_id'

Можете също да използвате опцията encodeForegnKey:

class App.Bid extends Batman.Model
  @belongsTo 'claim', encodeForeignKey: true
  @belongsTo 'buyer', encodeForeignKey: true
person rmosolgo    schedule 19.11.2013