o.errors.allErrors.each {println это} по умолчанию при отказе сохранить объект области

Как насчет обеспечения прослушивания http-объекта после загрузки файла в память:


// server.js
var myMap = {};

function readCsv(cb){
  fs.createReadStream('filename.csv')  
  .pipe(csv())
  .on('data', (row) => {
    // Build javascript object
    myMap[row['key']] = row['value'];
  })
  .on('end', () => {
    console.log('Done.');
    cb();
  });
}

var app = express();

exports = Object.freeze({
  server: http.createServer(app)
  init(){
    readCsv(() => {
      this.server.listen(80)
    })
  }
})

Что-то в этом роде.

Вы также можете использовать Обещание

// server.js
var myMap = {};

function readCsv(){
  return new Promise((request, reject) => {
    fs.createReadStream('filename.csv')  
    .pipe(csv())
    .on('data', (row) => {
      // Build javascript object
      myMap[row['key']] = row['value'];
    })
    .on('end', () => {
      console.log('Done.');
      resolve();
    })
    .on('error', reject)
  })

}

var app = express();

exports = Object.freeze({
  server: http.createServer(app)
  init(){
    return readCsv().then(() => {
      this.server.listen(80)
    })
  }
})

5
задан codeLes 5 March 2009 в 00:03
поделиться

2 ответа

Решение:

Object.metaClass.s = {
    def o = delegate.save()
    if (!o) {
        delegate.errors.allErrors.each {
            println it
        }
    }
    o
}

Это добавляет метод, названный s (), который будет звонить, сохраняют () и печатают любые ошибки.

9
ответ дан 14 December 2019 в 01:18
поделиться

Это не самый чистый взгляд, и существует, вероятно, лучший, более отличный способ сделать это. На основе взгляда здесь я соединил этот код, который мог бы быть чем-то, что Вы могли развернуть и использование:

class Book {
   void printTitle(){ println "The Title" }
}

Book.metaClass.customPrintTitle << {-> 
    println "changin ur class"
    printTitle()
}

def b = new Book()

b.customPrintTitle()
0
ответ дан 14 December 2019 в 01:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: