1
- # Generated by Django 5.0 on 2023-12-06 14:18
1
+ # Generated by Django 5.0 on 2023-12-18 20:23
2
2
3
+ import dcat .models
3
4
import django .db .models .deletion
4
5
from django .db import migrations , models
5
6
@@ -23,23 +24,12 @@ class Migration(migrations.Migration):
23
24
),
24
25
),
25
26
("name" , models .CharField (max_length = 255 )),
26
- (
27
- "type" ,
28
- models .CharField (
29
- choices = [
30
- ("ORGANIZATION" , "Organization" ),
31
- ("PERSON" , "Person" ),
32
- ("OTHER" , "Other" ),
33
- ],
34
- default = "ORGANIZATION" ,
35
- max_length = 20 ,
36
- ),
37
- ),
27
+ ("type" , models .CharField (max_length = 20 )),
38
28
("mbox" , models .EmailField (blank = True , max_length = 254 , null = True )),
39
29
],
40
30
),
41
31
migrations .CreateModel (
42
- name = "Resource " ,
32
+ name = "Checksum " ,
43
33
fields = [
44
34
(
45
35
"id" ,
@@ -50,6 +40,8 @@ class Migration(migrations.Migration):
50
40
verbose_name = "ID" ,
51
41
),
52
42
),
43
+ ("checksum_value" , models .CharField (max_length = 255 )),
44
+ ("algorithm" , models .CharField (max_length = 10 )),
53
45
],
54
46
),
55
47
migrations .CreateModel (
@@ -66,7 +58,7 @@ class Migration(migrations.Migration):
66
58
),
67
59
("code" , models .CharField (max_length = 10 )),
68
60
("label" , models .CharField (max_length = 255 )),
69
- ("description" , models .TextField (blank = True , null = True )),
61
+ ("description" , models .TextField (blank = True , default = "" )),
70
62
],
71
63
),
72
64
migrations .CreateModel (
@@ -81,10 +73,13 @@ class Migration(migrations.Migration):
81
73
verbose_name = "ID" ,
82
74
),
83
75
),
84
- ("code" , models .CharField (max_length = 10 , unique = True )),
85
76
("label" , models .CharField (max_length = 255 )),
86
- ("url_general" , models .URLField (null = True )),
87
- ("url_document" , models .URLField (null = True )),
77
+ (
78
+ "code" ,
79
+ models .CharField (blank = True , max_length = 10 , null = True , unique = True ),
80
+ ),
81
+ ("url_general" , models .URLField (blank = True , default = "" )),
82
+ ("url_document" , models .URLField (blank = True , default = "" )),
88
83
],
89
84
),
90
85
migrations .CreateModel (
@@ -99,33 +94,48 @@ class Migration(migrations.Migration):
99
94
verbose_name = "ID" ,
100
95
),
101
96
),
102
- ("code" , models .CharField (max_length = 10 )),
103
97
("extension" , models .CharField (max_length = 10 )),
104
- ("media_type" , models .CharField (max_length = 50 )),
105
- ("description" , models .TextField ()),
98
+ (
99
+ "code" ,
100
+ models .CharField (blank = True , max_length = 10 , null = True , unique = True ),
101
+ ),
102
+ ("media_type" , models .CharField (blank = True , max_length = 50 )),
103
+ ("description" , models .TextField (blank = True )),
106
104
],
107
105
),
108
106
migrations .CreateModel (
109
- name = "Dataset " ,
107
+ name = "Catalog " ,
110
108
fields = [
111
109
(
112
- "resource_ptr " ,
113
- models .OneToOneField (
110
+ "id " ,
111
+ models .BigAutoField (
114
112
auto_created = True ,
115
- on_delete = django .db .models .deletion .CASCADE ,
116
- parent_link = True ,
117
113
primary_key = True ,
118
114
serialize = False ,
119
- to = "dcat.resource " ,
115
+ verbose_name = "ID " ,
120
116
),
121
117
),
122
118
("title" , models .CharField (max_length = 255 )),
123
119
("description" , models .TextField ()),
120
+ (
121
+ "publisher" ,
122
+ models .ForeignKey (
123
+ on_delete = django .db .models .deletion .CASCADE , to = "dcat.agent"
124
+ ),
125
+ ),
126
+ ("themes" , models .ManyToManyField (to = "dcat.datatheme" )),
127
+ (
128
+ "license" ,
129
+ models .ForeignKey (
130
+ null = True ,
131
+ on_delete = django .db .models .deletion .SET_NULL ,
132
+ to = "dcat.licencedocument" ,
133
+ ),
134
+ ),
124
135
],
125
- bases = ("dcat.resource" ,),
126
136
),
127
137
migrations .CreateModel (
128
- name = "Catalog " ,
138
+ name = "Dataset " ,
129
139
fields = [
130
140
(
131
141
"id" ,
@@ -139,20 +149,20 @@ class Migration(migrations.Migration):
139
149
("title" , models .CharField (max_length = 255 )),
140
150
("description" , models .TextField ()),
141
151
(
142
- "publisher " ,
152
+ "catalog " ,
143
153
models .ForeignKey (
144
- on_delete = django .db .models .deletion .CASCADE , to = "dcat.agent "
154
+ on_delete = django .db .models .deletion .CASCADE , to = "dcat.catalog "
145
155
),
146
156
),
147
- ("themes" , models .ManyToManyField (to = "dcat.datatheme" )),
148
157
(
149
- "license " ,
158
+ "publisher " ,
150
159
models .ForeignKey (
151
160
null = True ,
152
161
on_delete = django .db .models .deletion .SET_NULL ,
153
- to = "dcat.licencedocument " ,
162
+ to = "dcat.agent " ,
154
163
),
155
164
),
165
+ ("themes" , models .ManyToManyField (to = "dcat.datatheme" )),
156
166
],
157
167
),
158
168
migrations .CreateModel (
@@ -169,11 +179,32 @@ class Migration(migrations.Migration):
169
179
),
170
180
("title" , models .CharField (blank = True , max_length = 255 )),
171
181
("description" , models .TextField (blank = True )),
172
- ("file" , models .FileField (upload_to = "files/" )),
173
- ("external_download_url" , models .URLField (blank = True , null = True )),
182
+ (
183
+ "file" ,
184
+ models .FileField (
185
+ upload_to = dcat .models .Distribution ._get_storage_path
186
+ ),
187
+ ),
188
+ ("external_download_url" , models .URLField (blank = True , default = "" )),
189
+ (
190
+ "checksum" ,
191
+ models .OneToOneField (
192
+ blank = True ,
193
+ null = True ,
194
+ on_delete = django .db .models .deletion .SET_NULL ,
195
+ to = "dcat.checksum" ,
196
+ ),
197
+ ),
198
+ (
199
+ "dataset" ,
200
+ models .ForeignKey (
201
+ on_delete = django .db .models .deletion .CASCADE , to = "dcat.dataset"
202
+ ),
203
+ ),
174
204
(
175
205
"license" ,
176
206
models .ForeignKey (
207
+ blank = True ,
177
208
null = True ,
178
209
on_delete = django .db .models .deletion .SET_NULL ,
179
210
to = "dcat.licencedocument" ,
@@ -182,36 +213,12 @@ class Migration(migrations.Migration):
182
213
(
183
214
"format" ,
184
215
models .ForeignKey (
216
+ blank = True ,
185
217
null = True ,
186
218
on_delete = django .db .models .deletion .SET_NULL ,
187
219
to = "dcat.mediatype" ,
188
220
),
189
221
),
190
- (
191
- "dataset" ,
192
- models .ForeignKey (
193
- on_delete = django .db .models .deletion .CASCADE , to = "dcat.dataset"
194
- ),
195
- ),
196
222
],
197
223
),
198
- migrations .AddField (
199
- model_name = "dataset" ,
200
- name = "catalog" ,
201
- field = models .ForeignKey (
202
- on_delete = django .db .models .deletion .CASCADE , to = "dcat.catalog"
203
- ),
204
- ),
205
- migrations .AddField (
206
- model_name = "dataset" ,
207
- name = "publisher" ,
208
- field = models .ForeignKey (
209
- null = True , on_delete = django .db .models .deletion .SET_NULL , to = "dcat.agent"
210
- ),
211
- ),
212
- migrations .AddField (
213
- model_name = "dataset" ,
214
- name = "themes" ,
215
- field = models .ManyToManyField (to = "dcat.datatheme" ),
216
- ),
217
224
]
0 commit comments