- small adaptions for back referencing internal datasets
This commit is contained in:
parent
221dff8208
commit
f3fe300a66
|
@ -61,7 +61,20 @@ export class DatasetController {
|
|||
"coverage",
|
||||
"licenses",
|
||||
"references",
|
||||
// "referenced_by",
|
||||
"project",
|
||||
{
|
||||
model: dbContext.Reference,
|
||||
as: "referenced_by",
|
||||
include: [
|
||||
{
|
||||
model: dbContext.Dataset,
|
||||
as: "dataset",
|
||||
foreignKey: "document_id",
|
||||
include: ["identifier"],
|
||||
},
|
||||
],
|
||||
},
|
||||
// "files",
|
||||
{
|
||||
model: dbContext.File,
|
||||
|
@ -149,7 +162,20 @@ export class DatasetController {
|
|||
"coverage",
|
||||
"licenses",
|
||||
"references",
|
||||
// "referenced_by",
|
||||
"project",
|
||||
{
|
||||
model: dbContext.Reference,
|
||||
as: "referenced_by",
|
||||
include: [
|
||||
{
|
||||
model: dbContext.Dataset,
|
||||
as: "dataset",
|
||||
foreignKey: "document_id",
|
||||
include: ["identifier"],
|
||||
},
|
||||
],
|
||||
},
|
||||
// "files",
|
||||
{
|
||||
model: dbContext.File,
|
||||
|
|
|
@ -24,6 +24,7 @@ class Reference extends Model<InferAttributes<Reference>, InferCreationAttribute
|
|||
declare created_at: CreationOptional<Date>;
|
||||
// updatedAt can be undefined during creation
|
||||
declare updated_at: CreationOptional<Date>;
|
||||
declare related_document_id?: number;
|
||||
|
||||
// https://sequelize.org/docs/v6/other-topics/typescript/
|
||||
// Since TS cannot determine model association at compile time
|
||||
|
|
|
@ -210,6 +210,15 @@ export function initModels() {
|
|||
foreignKey: "document_id",
|
||||
as: "dataset",
|
||||
});
|
||||
Dataset.hasMany(Reference, {
|
||||
foreignKey: "related_document_id",
|
||||
as: "referenced_by",
|
||||
});
|
||||
Reference.belongsTo(Dataset, {
|
||||
foreignKey: "related_document_id",
|
||||
as: "new_dataset",
|
||||
include: "identifier"
|
||||
});
|
||||
|
||||
//project relations
|
||||
Project.hasMany(Dataset, {
|
||||
|
@ -279,6 +288,7 @@ export function initModels() {
|
|||
Subject: Subject,
|
||||
License: License,
|
||||
DocumentPersons: DocumentPersons,
|
||||
File: File
|
||||
File: File,
|
||||
Reference: Reference
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user