-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdb.js
91 lines (84 loc) · 2.93 KB
/
db.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
const Sequelize = require("sequelize");
//const sequelize = new Sequelize("bREZd5lSqZ", "bREZd5lSqZ", "vdPjFjFYz3", {
const sequelize = new Sequelize("TYQcLL35gV", "TYQcLL35gV", "BLysSj9ZrP", {
host: "mysql-3213-0.cloudclusters.net",
dialect: "mysql",
port: 10021,
logging: false
});
const db = {};
db.Sequelize = Sequelize;
db.sequelize = sequelize;
//import modela ovdje
db.zahtjevZaPotvrdu = sequelize.import(__dirname + "/zahtjevZaPotvrdu.js");
db.korisnik = sequelize.import(__dirname + "/korisnik.js");
db.svrha = sequelize.import(__dirname + "/svrhaPotvrde.js");
db.predmet = sequelize.import(__dirname + "/predmet.js");
db.ispit = sequelize.import(__dirname + "/ispit.js");
db.ispiti_rezultati = sequelize.import(__dirname + "/ispiti_rezultati.js");
db.uloga = sequelize.import(__dirname + "/uloga.js");
db.ispitBodovi = sequelize.import(__dirname + "/ispitBodovi.js");
db.predmetStudent = sequelize.import(__dirname + "/predmetStudent.js");
db.prisustvoPredavanja = sequelize.import(
__dirname + "/prisustvoPredavanja.js"
);
db.prisustvoTutorijali = sequelize.import(
__dirname + "/prisustvoTutorijali.js"
);
db.odsjek = sequelize.import(__dirname+"/odsjek.js");
db.prisustvoVjezbe = sequelize.import(__dirname + "/prisustvoVjezbe.js");
db.projekat = sequelize.import(__dirname + "/projekat.js");
db.zadaca = sequelize.import(__dirname + "/zadaca.js");
db.akademskaGodina = sequelize.import(__dirname + "/akademskaGodina.js");
db.student_zadatak = sequelize.import(__dirname+"/student_zadatak.js");
db.zadatak = sequelize.import(__dirname+"/zadatak.js");
db.sacuvaniIzvjestaji = sequelize.import(__dirname + "/sacuvaniIzvjestaji.js");
//definisanje veza
//1:n
db.korisnik.hasMany(db.zahtjevZaPotvrdu, {
foreignKey: "idStudenta",
as: "korisnici"
});
db.ispit.hasMany(db.ispiti_rezultati, { foreignKey: "idIspit", as: "ispiti" });
db.predmet.hasMany(db.zadaca, {
foreignKey: "idPredmet",
as: "zadace"
});
db.predmet.hasMany(db.ispit, {
foreignKey: "idPredmet",
as: "ispiti"
});
db.predmet.hasMany(db.projekat, {
foreignKey: "idPredmet",
as: "projekti"
});
db.zadaca.hasMany(db.zadatak,{
foreignKey: "idZadaca",
as:"zadaci"
});
//1:1
db.zahtjevZaPotvrdu.belongsTo(db.svrha, { foreignKey: "idSvrhe" });
db.korisnik.belongsTo(db.uloga, { foreignKey: "idUloga" });
db.predmetStudent.belongsTo(db.predmet, { foreignKey: "idPredmet" });
//korisnik-predmet m:n
db.korisnikPredmet = db.korisnik.belongsToMany(db.predmet, {
as: "predmeti",
through: "predmet_student",
foreignKey: "idStudent"
});
db.predmet.belongsToMany(db.korisnik, {
as: "korisnici",
through: "predmet_student",
foreignKey: "idPredmet"
});
db.ispit.belongsToMany(db.korisnik, {
as: "studenti",
through: "ispiti_rezultati",
foreignKey: "idIspit"
});
db.korisnik.belongsToMany(db.ispit, {
as: "ispiti",
through: "ispiti_rezultati",
foreignKey: "idStudent"
});
module.exports = db;