1
0
mirror of https://github.com/hotomoe/hotomoe synced 2024-11-27 14:28:16 +09:00
This commit is contained in:
syuilo 2019-06-29 23:12:00 +09:00
parent 763b70e01b
commit bb2d76ffa3
No known key found for this signature in database
GPG Key ID: BDC4C49D06AB9D69
5 changed files with 55 additions and 58 deletions

View File

@ -588,10 +588,9 @@ mongodb:
3. migration ブランチに切り替え
4. `npm i`
5. `npm run build`
6. `npm run init`
7. `npm run migrate`
8. master ブランチに戻す
9. enjoy
6. `npm run migrate`
7. master ブランチに戻す
8. enjoy
10.100.0
----------

View File

@ -219,8 +219,6 @@ const user = await Users.findOne(userId).then(ensure);
```
### Migration作成方法
コードの変更をした後、`ormconfig.json``npm run ormconfig`で生成)を用意し、
```
npm i -g ts-node
ts-node ./node_modules/typeorm/cli.js migration:generate -n 変更の名前

View File

@ -1,7 +1,7 @@
import * as fs from 'fs';
import config from './config';
const config = require('./built/config').default;
const entities = require('./built/db/postgre').entities;
const json = {
module.exports = {
type: 'postgres',
host: config.db.host,
port: config.db.port,
@ -9,11 +9,9 @@ const json = {
password: config.db.pass,
database: config.db.db,
extra: config.db.extra,
entities: ['src/models/entities/*.ts'],
entities: entities,
migrations: ['migration/*.ts'],
cli: {
migrationsDir: 'migration'
}
};
fs.writeFileSync('ormconfig.json', JSON.stringify(json));

View File

@ -11,9 +11,9 @@
"private": true,
"scripts": {
"start": "node ./index.js",
"init": "node ./built/init.js",
"init": "npm run migrate",
"ormconfig": "node ./built/ormconfig.js",
"migrate": "npm run ormconfig && ts-node ./node_modules/typeorm/cli.js migration:run",
"migrate": "ts-node ./node_modules/typeorm/cli.js migration:run",
"migrateandstart": "npm run migrate && npm run start",
"build": "webpack && gulp build",
"webpack": "webpack",

View File

@ -80,6 +80,51 @@ class MyCustomLogger implements Logger {
}
}
export const entities = [
Meta,
Instance,
App,
AuthSession,
AccessToken,
User,
UserProfile,
UserKeypair,
UserPublickey,
UserList,
UserListJoining,
UserGroup,
UserGroupJoining,
UserGroupInvite,
UserNotePining,
Following,
FollowRequest,
Muting,
Blocking,
Note,
NoteFavorite,
NoteReaction,
NoteWatching,
NoteUnread,
Page,
PageLike,
Log,
DriveFile,
DriveFolder,
Poll,
PollVote,
Notification,
Emoji,
Hashtag,
SwSubscription,
AbuseUserReport,
RegistrationTicket,
MessagingMessage,
Signin,
ReversiGame,
ReversiMatching,
...charts as any
];
export function initDb(justBorrow = false, sync = false, log = false) {
try {
const conn = getConnection();
@ -110,49 +155,6 @@ export function initDb(justBorrow = false, sync = false, log = false) {
} : false,
logging: log,
logger: log ? new MyCustomLogger() : undefined,
entities: [
Meta,
Instance,
App,
AuthSession,
AccessToken,
User,
UserProfile,
UserKeypair,
UserPublickey,
UserList,
UserListJoining,
UserGroup,
UserGroupJoining,
UserGroupInvite,
UserNotePining,
Following,
FollowRequest,
Muting,
Blocking,
Note,
NoteFavorite,
NoteReaction,
NoteWatching,
NoteUnread,
Page,
PageLike,
Log,
DriveFile,
DriveFolder,
Poll,
PollVote,
Notification,
Emoji,
Hashtag,
SwSubscription,
AbuseUserReport,
RegistrationTicket,
MessagingMessage,
Signin,
ReversiGame,
ReversiMatching,
...charts as any
]
entities: entities
});
}