Skip to content

Instantly share code, notes, and snippets.

@otang
Created April 18, 2014 15:19
Show Gist options
  • Save otang/11049519 to your computer and use it in GitHub Desktop.
Save otang/11049519 to your computer and use it in GitHub Desktop.
config = require 'config'
_ = require 'underscore'
module.exports = (sequelize, types) ->
Membership = sequelize.define 'Membership',
user_id: types.INTEGER
group_id: types.INTEGER
feedback_ups: types.INTEGER
feedback_downs: types.INTEGER
feedback_neutrals: types.INTEGER
wins: types.INTEGER
no_shows: types.INTEGER
banned_from_bidding: types.INTEGER(1)
role: types.STRING(20)
,
tableName: 'memberships'
getterMethods:
# TODO
# membership.feedback_percent
# membership.feedback_score
# membership.show_feedback_percent
feedback_percent: () ->
#return @feedback_ups / @feedback_downs
return 'WHAT THE FUCK'
classMethods:
associate: (models) ->
###
# All user, group, and membership associations go here
# for readability
###
models.User.hasMany models.Group,
through: Membership
models.Group.hasMany models.User,
through: Membership
Membership.belongsTo models.User,
foreignKey: 'user_id'
Membership.belongsTo models.Group,
foreignKey: 'group_id'
models.User.hasOne Membership,
foreignKey: 'user_id'
models.Group.hasOne Membership,
foreignKey: 'group_id'
return Membership
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment