当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript ModelManager.register方法代码示例

本文整理汇总了TypeScript中rev-models.ModelManager.register方法的典型用法代码示例。如果您正苦于以下问题:TypeScript ModelManager.register方法的具体用法?TypeScript ModelManager.register怎么用?TypeScript ModelManager.register使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在rev-models.ModelManager的用法示例。


在下文中一共展示了ModelManager.register方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: beforeEach

 beforeEach(() => {
     models = new rev.ModelManager();
     models.registerBackend('default', new rev.InMemoryBackend());
     models.register(TestDecoratedModel);
     models.register(TestModel);
     apiManager = new ModelApiManager(models);
 });
开发者ID:RevFramework,项目名称:rev-framework,代码行数:7,代码来源:meta.tests.ts

示例2: getModelManager

export function getModelManager() {
    const modelManager = new ModelManager();
    modelManager.registerBackend('default', new InMemoryBackend());
    modelManager.register(User);
    modelManager.register(Post);
    modelManager.register(Comment);
    return modelManager;
}
开发者ID:RevFramework,项目名称:rev-framework,代码行数:8,代码来源:models.ts

示例3: MongoDBBackend

(async () => {

    // Create a MongoDBBackend and connect to MongoDB

    const mongo = new MongoDBBackend({
        url: 'mongodb://localhost:27017',
        dbName: 'example_db'
    });
    await mongo.connect();

    // Create a ModelManager, and assign MongoDB as the default backend

    const modelManager = new ModelManager();
    modelManager.registerBackend('default', mongo);
    modelManager.register(TestModel);

    // Create some data, then disconnect afterwards

    await modelManager.create(new TestModel({
        name: 'data from RevJS!',
        description: 'This beautiful record was created by RevJS',
        score: 110
    }));
    console.log('Data successfully created in MongoDB!');

    await mongo.disconnect();

})();
开发者ID:RevFramework,项目名称:rev-framework,代码行数:28,代码来源:using_a_mongodb_backend.ts

示例4: getModelManager

export function getModelManager() {
    const modelManager = new ModelManager();
    modelManager.registerBackend('default', new InMemoryBackend());
    modelManager.register(User);
    modelManager.register(Post);
    modelManager.register(Comment);
    modelManager.register(UnrelatedModel);
    modelManager.register(ModelWithUnknownField, { fields: [
        new UnknownField('unknownField')
    ]});
    modelManager.register(ModelWithAllScalarFields);
    return modelManager;
}
开发者ID:RevFramework,项目名称:rev-framework,代码行数:13,代码来源:models.ts

示例5: constructor

import {
    AutoNumberField, TextField, IntegerField,
    ModelManager, InMemoryBackend
} from 'rev-models';

class TestModel {
    @AutoNumberField({ primaryKey: true })
        item_number: number;
    @TextField()
        name: string;
    @TextField({ required: false })
        description: string;
    @IntegerField()
        score: number;

    constructor(data: Partial<TestModel>) {
        Object.assign(this, data);
    }
}

// Create a ModelManager with an InMemoryBackend
const modelManager = new ModelManager();
modelManager.registerBackend('default', new InMemoryBackend());
modelManager.register(TestModel);
开发者ID:RevFramework,项目名称:rev-framework,代码行数:24,代码来源:using_an_inmemory_backend.ts

示例6: ModelManager

import { TextField, ModelManager, InMemoryBackend } from 'rev-models';

// Define models

export class User {
    @TextField()
        first_name: string;
    @TextField()
        last_name: string;
}

export class Post {
    @TextField()
        title: string;
    @TextField({ multiLine: true })
        body: string;
}

// Create ModelManager and register the models

export const modelManager = new ModelManager();
modelManager.registerBackend('default', new InMemoryBackend());

modelManager.register(User);
modelManager.register(Post);
开发者ID:RevFramework,项目名称:rev-framework,代码行数:25,代码来源:registering_models.ts

示例7: constructor

// Define model

export class Comment {
    @TextField()
        comment: string;
    @SelectField({ selection: [['draft', 'Draft'], ['posted', 'Posted']]})
        status: string;

    constructor(data?: Partial<Comment>) {
        Object.assign(this, data);
    }
}

const modelManager = new ModelManager();
modelManager.registerBackend('default', new InMemoryBackend());
modelManager.register(Comment);

// Try to create an invalid Comment

(async () => {

    try {
        await modelManager.create(new Comment({
            comment: 'This comment has an invalid status',
            status: 'Awesome!'
        }));
    }
    catch (e) {
        if (e instanceof ValidationError) {
            console.log('Model Failed Validation :(');
            console.log('Field Errors:', e.validation.fieldErrors);
开发者ID:RevFramework,项目名称:rev-framework,代码行数:31,代码来源:handling_validation_errors.ts

示例8: ModelManager

import * as models from './models';
import { createData } from './model_data';
import { ModelManager, InMemoryBackend } from 'rev-models';
import { ModelApiManager } from 'rev-api';

// Register server models

export const modelManager = new ModelManager();
const backend = new InMemoryBackend();
modelManager.registerBackend('default', backend);
modelManager.register(models.User);
modelManager.register(models.Post);
modelManager.register(models.Comment);
modelManager.register(models.ModelWithAllFields);

export const api = new ModelApiManager(modelManager);
api.register(models.User);
api.register(models.Post);
api.register(models.Comment);
api.register(models.ModelWithAllFields);

// Create Koa & Apollo GraphQL Server

import * as koa from 'koa';
import * as koaRouter from 'koa-router';
import * as koaBody from 'koa-bodyparser';
import { graphqlKoa, graphiqlKoa } from 'graphql-server-koa';

const schema = api.getGraphQLSchema();
开发者ID:RevFramework,项目名称:rev-framework,代码行数:29,代码来源:api.ts

示例9: constructor

        Object.assign(this, data);
    }
}

export class Customer {
    @AutoNumberField({ primaryKey: true })
        id: number;
    @TextField()
        first_name: string;
    @TextField()
        last_name: string;
    @IntegerField()
        age: number;
    @SelectField({ selection: [['M', 'Male'], ['F', 'Female']] })
        gender: string;
    @RelatedModel({ model: 'City', required: false })
        city: City;

    constructor(data?: Partial<Customer>) {
        Object.assign(this, data);
    }
}

// Create ModelManager and register the models

export const modelManager = new ModelManager();
modelManager.registerBackend('default', new InMemoryBackend());

modelManager.register(City);
modelManager.register(Customer);
开发者ID:RevFramework,项目名称:rev-framework,代码行数:30,代码来源:creating_models.ts

示例10: ModelManager

                where: {
                    title: { _like: this.title }
                }
            });
            if (duplicates.meta.totalCount > 0) {
                ctx.result.addFieldError('title', 'Cannot create post with a duplicate title!');
            }
        }
    }
}

// Create ModelManager

export const modelManager = new ModelManager();
modelManager.registerBackend('default', new InMemoryBackend());
modelManager.register(Post);

// Create some data

(async () => {
    try {

        // Create a valid post
        await modelManager.create(new Post({
            title: 'This is a valid post',
            body: 'No alternative facts here!',
            is_published: true
        }));

        // Try to create a duplicate post...
        await modelManager.create(new Post({
开发者ID:RevFramework,项目名称:rev-framework,代码行数:31,代码来源:custom_validation.ts


注:本文中的rev-models.ModelManager.register方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。