mirror of
https://github.com/sstent/expressmongotest.git
synced 2026-01-26 17:12:33 +00:00
refactored article to workout
This commit is contained in:
@@ -1,6 +0,0 @@
|
||||
var mongoose = require('mongoose');
|
||||
var ArticleSchema = require('../schemas/article');
|
||||
|
||||
var Article = mongoose.model('Article', ArticleSchema);
|
||||
|
||||
module.exports = Article;
|
||||
6
test/data/models/workout.js
Normal file
6
test/data/models/workout.js
Normal file
@@ -0,0 +1,6 @@
|
||||
var mongoose = require('mongoose');
|
||||
var workoutSchema = require('../schemas/workout');
|
||||
|
||||
var workout = mongoose.model('workout', workoutSchema);
|
||||
|
||||
module.exports = workout;
|
||||
@@ -1,19 +0,0 @@
|
||||
var Schema = require('mongoose').Schema;
|
||||
|
||||
var ArticleSchema = new Schema({
|
||||
title: {
|
||||
type: String
|
||||
},
|
||||
body: String,
|
||||
author: {
|
||||
type: Schema.ObjectId,
|
||||
ref: 'User',
|
||||
required: true
|
||||
},
|
||||
created_at: {
|
||||
type: Date,
|
||||
'default': Date.now
|
||||
}
|
||||
});
|
||||
|
||||
module.exports = ArticleSchema;
|
||||
@@ -7,8 +7,8 @@ var UserSchema = new mongoose.Schema({
|
||||
is_admin: {type: Boolean, 'default': false }
|
||||
});
|
||||
|
||||
UserSchema.methods.recentArticles = function(callback) {
|
||||
return this.model('Article')
|
||||
UserSchema.methods.recentworkouts = function(callback) {
|
||||
return this.model('workout')
|
||||
.find({author: this._id})
|
||||
//.sort('created_at', 1)
|
||||
.limit(5)
|
||||
|
||||
@@ -1,30 +1,19 @@
|
||||
var Schema = require('mongoose').Schema;
|
||||
|
||||
|
||||
var Split = new Schema({
|
||||
reps: { type: String},
|
||||
weight: { type: String},
|
||||
dropset: { type: Boolean }
|
||||
var workoutSchema = new Schema({
|
||||
title: {
|
||||
type: String
|
||||
},
|
||||
body: String,
|
||||
author: {
|
||||
type: Schema.ObjectId,
|
||||
ref: 'User',
|
||||
required: true
|
||||
},
|
||||
created_at: {
|
||||
type: Date,
|
||||
'default': Date.now
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
var Element = new Schema({
|
||||
ExerciseID: { type: Schema.ObjectId, ref: 'exercise'},
|
||||
splits: [Split]
|
||||
});
|
||||
|
||||
|
||||
var ArticleSchema = new Schema({
|
||||
|
||||
userID: { type: Schema.ObjectId, ref: 'User', required: true },
|
||||
workoutDate: { type: Date, 'default': Date.now },
|
||||
workoutTime: { type: Date, 'default': Date.now },
|
||||
privacySetting: { type: Number},
|
||||
Notes: { type: String},
|
||||
templateID: { type: Schema.ObjectId, ref: 'Template'},
|
||||
circuits: [Number],
|
||||
elements: [Element]
|
||||
|
||||
});
|
||||
|
||||
module.exports = ArticleSchema;
|
||||
module.exports = workoutSchema;
|
||||
30
test/data/schemas/workout_new.js
Normal file
30
test/data/schemas/workout_new.js
Normal file
@@ -0,0 +1,30 @@
|
||||
var Schema = require('mongoose').Schema;
|
||||
|
||||
|
||||
var Split = new Schema({
|
||||
reps: { type: String},
|
||||
weight: { type: String},
|
||||
dropset: { type: Boolean }
|
||||
});
|
||||
|
||||
|
||||
var Element = new Schema({
|
||||
ExerciseID: { type: Schema.ObjectId, ref: 'exercise'},
|
||||
splits: [Split]
|
||||
});
|
||||
|
||||
|
||||
var workoutSchema = new Schema({
|
||||
|
||||
userID: { type: Schema.ObjectId, ref: 'User', required: true },
|
||||
workoutDate: { type: Date, 'default': Date.now },
|
||||
workoutTime: { type: Date, 'default': Date.now },
|
||||
privacySetting: { type: Number},
|
||||
Notes: { type: String},
|
||||
templateID: { type: Schema.ObjectId, ref: 'Template'},
|
||||
circuits: [Number],
|
||||
elements: [Element]
|
||||
|
||||
});
|
||||
|
||||
module.exports = workoutSchema;
|
||||
Reference in New Issue
Block a user