Yasemin Sequelize TypeError ile test: _models2.default.count bir işlev değil

oy
0

Jasmine'i kullanarak veritabanı test etmek çalışıyorum. Ben Sequelize ile PostgreSQL kullanıyorum. Ben test ediyorum modelidir:

fishtype.js

import { sequelize, DataTypes } from '.';

const FishType = sequelize.define(
  'FishType',
  {
    name: {
      type: DataTypes.STRING(50),
      allowNull: false,
      unique: 'fishType_unique'
    }
  }
)

FishType.associate = function ({ FishingSpot }) {
  FishType.hasMany(FishingSpot, {
    foreignKey: {
      name: 'fishingSpotId',
      allowNull: true
    },
    as: 'fishingSpots',
  })
}

export default FishType;

Benim spec.js dosyasıdır:

fishtype.spec.js

import FishType from '../../models';

describe('FishType', () => {
  it('should be accessed', () => {
   console.log(FishType.count())
   return FishType.count().then((count) => {
     expect(count).toEqual(0);
   });
 });
})  

Aşağıdaki hatayı alıyorum test başlangıç ​​sonra:

    Failures:
1) FishType should be accessed
  Message:
    TypeError: _models2.default.count is not a function
  Stack:
        at <Jasmine>
        at UserContext.<anonymous> (E:/js/fishing-app/server/spec/model/fishType.spec.js:6:26)
    at <Jasmine>
    at runCallback (timers.js:810:20)
    at tryOnImmediate (timers.js:768:5)
    at processImmediate [as _immediateCallback] (timers.js:745:5)
Oluştur 20/10/2018 saat 13:58
kaynak kullanıcı
Diğer dillerde...                            


1 cevaplar

oy
0

Ben modeller klasöründe benim index.js dosyasını eksikti ve modelin kendisi sequelize için "görünür" değildi

Cevap 22/10/2018 saat 07:00
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more