Fix TypeORM errors for nullable fields

For fields with '| null' in the TS type, the column type needs to be
specified explicitly in column options when using MySQL.

See:
https://github.com/typeorm/typeorm/issues/1358#issuecomment-391736766
This commit is contained in:
Dragory 2020-11-09 20:11:33 +02:00
parent 629002b8d9
commit 2f50232cf3
No known key found for this signature in database
GPG key ID: 5F387BA66DF8AAC1
6 changed files with 14 additions and 14 deletions

View file

@ -9,7 +9,7 @@ export class AllowedGuild {
@Column() @Column()
name: string; name: string;
@Column({ nullable: true }) @Column({ type: String, nullable: true })
icon: string | null; icon: string | null;
@Column() @Column()

View file

@ -17,5 +17,5 @@ export class ArchiveEntry {
@Column() created_at: string; @Column() created_at: string;
@Column({ nullable: true }) expires_at: string | null; @Column({ type: String, nullable: true }) expires_at: string | null;
} }

View file

@ -13,27 +13,27 @@ export class Case {
@Column() user_name: string; @Column() user_name: string;
@Column({ nullable: true }) mod_id: string | null; @Column({ type: String, nullable: true }) mod_id: string | null;
@Column({ nullable: true }) mod_name: string | null; @Column({ type: String, nullable: true }) mod_name: string | null;
@Column() type: number; @Column() type: number;
@Column({ nullable: true }) audit_log_id: string | null; @Column({ type: String, nullable: true }) audit_log_id: string | null;
@Column() created_at: string; @Column() created_at: string;
@Column() is_hidden: boolean; @Column() is_hidden: boolean;
@Column({ nullable: true }) pp_id: string | null; @Column({ type: String, nullable: true }) pp_id: string | null;
@Column({ nullable: true }) pp_name: string | null; @Column({ type: String, nullable: true }) pp_name: string | null;
/** /**
* ID of the channel and message where this case was logged. * ID of the channel and message where this case was logged.
* Format: "channelid-messageid" * Format: "channelid-messageid"
*/ */
@Column({ nullable: true }) log_message_id: string | null; @Column({ type: String, nullable: true }) log_message_id: string | null;
@OneToMany( @OneToMany(
type => CaseNote, type => CaseNote,

View file

@ -12,7 +12,7 @@ export class Mute {
@Column() created_at: string; @Column() created_at: string;
@Column({ nullable: true }) expires_at: string | null; @Column({ type: String, nullable: true }) expires_at: string | null;
@Column() case_id: number; @Column() case_id: number;
} }

View file

@ -20,16 +20,16 @@ export class ScheduledPost {
@Column("simple-json") attachments: Attachment[]; @Column("simple-json") attachments: Attachment[];
@Column({ nullable: true }) post_at: string | null; @Column({ type: String, nullable: true }) post_at: string | null;
/** /**
* How often to post the message, in milliseconds * How often to post the message, in milliseconds
*/ */
@Column({ nullable: true }) repeat_interval: number | null; @Column({ type: String, nullable: true }) repeat_interval: number | null;
@Column({ nullable: true }) repeat_until: string | null; @Column({ type: String, nullable: true }) repeat_until: string | null;
@Column({ nullable: true }) repeat_times: number | null; @Column({ type: String, nullable: true }) repeat_times: number | null;
@Column() enable_mentions: boolean; @Column() enable_mentions: boolean;
} }

View file

@ -9,6 +9,6 @@ export class Supporter {
@Column() @Column()
name: string; name: string;
@Column() @Column({ type: String, nullable: true })
amount: string | null; amount: string | null;
} }