Simpl-Schema Error in MeteorJs

0

I'm using MeteorJs, I'm new and I'm developing an app.

TypeError: func is not a function

I have this error that I do not know what is due:

W20180704-19:24:46.581(-3)? (STDERR)       throw error;
W20180704-19:24:46.582(-3)? (STDERR)       ^
W20180704-19:24:46.582(-3)? (STDERR)
W20180704-19:24:46.583(-3)? (STDERR) TypeError: func is not a function
W20180704-19:24:46.584(-3)? (STDERR)     at F:\METEOR\myCMS\node_modules\simpl-schema\dist\doValidation.js:366:18
W20180704-19:24:46.584(-3)? (STDERR)     at Array.forEach (<anonymous>)
W20180704-19:24:46.585(-3)? (STDERR)     at doValidation (F:\METEOR\myCMS\node_modules\simpl-schema\dist\doValidation.js:365:17)
W20180704-19:24:46.586(-3)? (STDERR)     at ValidationContext.validate (F:\METEOR\myCMS\node_modules\simpl-schema\dist\ValidationContext.js:222:57)
W20180704-19:24:46.586(-3)? (STDERR)     at doValidate (packages/aldeed:collection2/collection2.js:433:33)
W20180704-19:24:46.587(-3)? (STDERR)     at ns.Collection.Mongo.Collection.(anonymous function) [as insert] (packages/aldeed:collection2/collection2.js:195:14)
W20180704-19:24:46.588(-3)? (STDERR)     at server/startup/startup.js:126:26
W20180704-19:24:46.588(-3)? (STDERR)     at Function.time (F:\METEOR\myCMS\.meteor\local\build\programs\server\profile.js:309:28)
W20180704-19:24:46.589(-3)? (STDERR)     at F:\METEOR\myCMS\.meteor\local\build\programs\server\boot.js:427:13
W20180704-19:24:46.591(-3)? (STDERR)     at F:\METEOR\myCMS\.meteor\local\build\programs\server\boot.js:472:5
W20180704-19:24:46.592(-3)? (STDERR)     at Function.run (F:\METEOR\myCMS\.meteor\local\build\programs\server\profile.js:510:12)
W20180704-19:24:46.592(-3)? (STDERR)     at F:\METEOR\myCMS\.meteor\local\build\programs\server\boot.js:470:11

Script StartUp:

import { Meteor } from "meteor/meteor";
import { Entradas } from '../../lib/collections/entradas';
import { Comentarios } from '../../lib/collections/comentarios';
import SimpleSchema from 'simpl-schema';


entradas_array=[];

function random_string(len){
    var res="";
    var chars = "123456789abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ";
    for(var i=0;i<len;i++){

        res+= chars[Math.floor(Math.random()*chars.length)];

    }
    return res;

}
function lorem(){
    return "Curabitur molestie velit ut odio scelerisque, eget accumsan nisl scelerisque. "+
    "Donec lectus nulla, ultrices fermentum molestie at, rhoncus id sapien. Phasellus nisi justo, "+
    "volutpat ut tellus vitae, posuere tempus nibh. Duis egestas eu augue id posuere. Nunc facilisis "+
    " rhoncus convallis. Nam suscipit vehicula neque, id maximus nisl elementum ac. Aliquam et dapibus lectus."+
    " Aenean consequat ligula mi, rhoncus congue eros convallis quis."+

     "Aenean malesuada placerat nisi quis fermentum. Aenean auctor sapien vitae magna finibus, "+
    "nec ultricies justo egestas. Orci varius natoque penatibus et magnis dis parturient montes, "+
    "nascetur ridiculus mus. Nullam posuere quam vitae neque accumsan placerat ut non justo. "+
    "Phasellus placerat sapien mattis, gravida erat ac, pretium eros. Nullam metus risus, pellentesque ut "+
    "luctus sit amet, vulputate et metus. Fusce elementum augue vitae ornare tempor. Phasellus in eros odio."+
    "Aenean lobortis facilisis leo nec malesuada. Phasellus vitae aliquam dui, sit amet tristique tortor. "+
     " Fusce egestas tincidunt erat, in luctus sapien consequat ac. Nam quam enim, dictum non ante a, placerat"+ 
     "pretium ex."+

     "Nunc placerat semper convallis. Mauris et est enim. Donec bibendum porttitor mattis. Nulla auctor "+
    "mi erat, at pulvinar metus fermentum egestas. Sed sit amet pellentesque ex. Proin semper turpis ut "+
    "tellus pellentesque, et dictum lectus bibendum. Morbi fermentum felis dolor, egestas efficitur ligula "+
    "pretium in. Pellentesque rhoncus nisl quis nisl consectetur lacinia. Integer convallis sapien sem, ut "+
    "scelerisque risus laoreet non. Morbi a nunc lobortis, egestas lorem aliquet, pretium ligula. Suspendisse"+
    " ultrices, sapien in dictum tincidunt, urna mi lacinia justo, a luctus velit ligula a odio. "+
     "Etiam varius efficitur mi. Pellentesque porta et felis sed rutrum. Pellentesque ac lorem id mi commodo"+ 
     "condimentum sit amet id nibh."+

     "Quisque orci nulla, maximus sed felis vel, ullamcorper fermentum nisi. Praesent a purus vel massa c"+
    "ommodo dictum. Suspendisse potenti. Vivamus egestas viverra mauris nec tristique. Curabitur viverra"+
    " volutpat lorem auctor sodales. Praesent sagittis lectus ac feugiat interdum. Vestibulum et blandit "+
     "sapien. Nunc gravida libero non massa consequat, ut congue turpis imperdiet. Sed porttitor odio ex,"+
     "in commodo risus tristique quis. Nulla ultricies mauris quis dolor gravida, at varius nisl scelerisque."+ 
      "  Quisque auctor tellus nec sapien semper convallis. Vestibulum ante ipsum primis in faucibus orci luctus"+
      " et ultrices posuere cubilia Curae; Etiam efficitur massa in eros sodales molestie. "+
       "   Donec et ullamcorper nisi."+

    "Pellentesque commodo eget neque quis ornare. In nunc est, accumsan quis facilisis ut, fermentum vel ex. "+
    "Pellentesque faucibus velit eget urna facilisis congue. In hac habitasse platea dictumst. Mauris mollis "+
    "felis nec mauris sagittis facilisis. Mauris tincidunt tempor eros, ut tincidunt nunc lobortis vitae. "+
    "Nulla lacinia diam tellus, eu suscipit ipsum aliquam at. Duis vel elementum felis, at malesuada lectus."+ 
    "Ut non faucibus ligula. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum dolor arcu,"+
    "porttitor a maximus commodo, feugiat et risus. Proin lacinia ullamcorper velit at pharetra. "+
    " Nunc facilisis mi quis augue eleifend, vel consequat nisl tempor. Fusce vitae libero quis odio "+
    "bibendum elementum quis id metus. Pellentesque habitant morbi tristique senectus et netus et malesuada "+
   "fames ac turpis egestas. Cras posuere vitae massa ac finibus.";
}
function lorem_cometarios(){
    return "Curabitur faucibus volutpat odio eu mattis. Phasellus id nisi quis ante pretium dictum a eu nunc."+
    " Donec iaculis at augue ut sodales. Aenean sit amet eros at quam ullamcorper malesuada."+ 
    " Duis malesuada ultricies ullamcorper. Nam pulvinar gravida neque, id commodo urna accumsan sed."+
    " Praesent placerat vulputate est quis interdum. Suspendisse leo lacus, egestas vitae luctus in,"+ 
    " accumsan et dui. Suspendisse neque elit, vestibulum ac felis eu, bibendum condimentum ante."+ 
      " Sed fermentum odio ac purus faucibus, vel porttitor velit mollis.";
}
Meteor.startup(function(){

    if(!Meteor.users.findOne()){

        for(var i=1; i<101;i++){

            var options={};

            if(i==1){
                options = {
                    username: "user" + i,
                    email: "user" + i + "@test.com",
                    password: "123456",
                    profile:{
                        active: true,
                        roles: "admin"
                    }
                };
            }else{
                options = {
                    username: "user" + i,
                    email: "user" + i + "@test.com",
                    password: "123456",
                    profile:{
                        active: true,
                        roles: "user"
                    }
                };
            }

            var userId = Accounts.createUser(options);
            console.log("creado el usuario "+userId)
        }
    }
//entradas

    if(!Entradas.findOne()){

        for(var i=0;i<100;i++){

            var user_count=Meteor.users.find().count();
            var j=Math.floor (Math.random()*user_count);
            var user_name = "user"+j;
            var selector = {username:user_name};
            var user = Meteor.users.findOne(selector);
            console.log(user._id);
            if(user){
                var entrada = {
                    title:random_string(10),
                    texto:lorem(),
                    author_id:user._id,
                    active:true,
                    coments_num:0
                }

                Entradas.insert(entrada,function(err,result) {

                    if(err){

                        throw new Meteor.Error(333,Entradas.simpleSchema().namedContext().keyErrorMessage());

                    }else{

                        console.log("entrada"+i+" id"+ result);
                        entradas_array[i]=result;
                    }

                });


            }

        }
        console.log(Entradas.simpleSchema().namedContext().keyErrorMessage());

    }

    if(!Comentarios.findOne()){
        for(var i=0;i<100;i++){
            var user_count=Meteor.users.find().count();
            var j=Math.floor (Math.random()*user_count);
            var user_name = "user"+j;
            var selector = {username:user_name};
            var user = Meteor.users.findOne(selector);
            if(user){
                var rand_entrada = Math.floor(Math.random()*entradas_array.length);
                var comentario = {
                    title:random_string(25),
                    texto:lorem_cometarios(),
                    author_id:user._id,
                    entrada_id:entradas_array[rand_entrada]
                }
                Comentarios.insert(comentario,function(err,result) {

                    if(err){

                        throw new Meteor.Error(333,Comentarios.simpleSchema().namedContext().invalidKeys());

                    }else{

                        console.log("Comentario "+i+" id"+ result);

                    }

                });


            }

        }
    }
});
    
asked by Nahuel Jakobson 05.07.2018 в 00:37
source

0 answers