2017-12-14 6 views
0

DB의 모든 요소를 ​​전면에 가져 와서 페인트하려고합니다. 나는 이것을 위해 totaljs를 사용하고있다. "에서 인식 할 수없는 글로벌 선택적 인수 0 : r.table하지만 난 다음 오류가 ("등록 정보 ")"rethinkdb 및 totaljs가 모든 요소를 ​​앞쪽으로 가져옴

정의/database.js

var r = require('rethinkdb'); 
var connection = null; 

r.connect({ 
    host: F.config.db_host, 
    port: U.parseInt(F.config.db_port) 
}, function(err, conn) { 
    connection = conn; 
    if (err) throw err; 
    r.db('test').tableList().run(conn, (err, res) => { 
    if (res.length > 0) return 
    else { 
     r.db('test').tableCreate('myNewTable').run(conn, function(err, res) { 
     }); 
    } 
    }) 
}); 

F.db = { 
    insert: (table, data, callback) => { 
    r.table(table).insert(data).run(connection, callback); 
    }, 
    get: (table, data, callback) => { 
    r.table(table).get(data).run(connection, callback); 
    }, 
    getByIndex: (table, data, callback) => { 
    console.log('table', table); 
    console.log('data', data); 
    r.table(table).getAll(data, {'index': index}).run(connection, (err, res) => { 
     if (err) throw err; 
     res.toArray(err, res => { 
      callback(err, res); 
     }); 
    }); 
    }, 
    all: (table, callback) => { 
    r.table(table).run(connection, callback); 
    } 
}; 

컨트롤러 /하는 index.js를

exports.install = function() { 
    F.route('/myroute', view_all);  
}; 

function view_all(){ 
    let self = this; 
    MODEL('myModel').all('myTable', (err, res) => { 
     if (err) throw err 
     self.view('properties'); 
    }); 
} 

모델/myModel.js

exports.table = 'myTable'; 

exports.schema = (data) => { 
    data = data || {}; 
    var schema = {}; 
    schema.id = data.id || U.GUID(); 
    schema.name = data.name || ''; 
    schema.created = data.created || new Date(); 
    schema.url = data.url || ''; 
    schema.description = data.description || ''; 
    return schema; 
}; 



exports.all = (data, callback) => { 
    F.db.all(exports.table, data, callback); 
}; 

보기/I ndex.html

<div class="container-fluid"> 
    <div class="row"> 
    <div class="col-md-12"> 
     <div class="project mb-3"> 
     <div class="project-body border border-grey rounded-0"> 
      <div class="row no-gutters"> 
       <div class="col-md-9"> 
       <div class="row"> 
        <div class="col-md-12"> 
        <span>@(All elements)</span> 
        @{if model.length > 0} 
        @{foreach m in model} 
        <ul class="all-content-wrapper"> 
        </ul> 
        </div> 
        @{end} 
        @{else} 
        <div class="nothing"> 
        @(There is no elemetns yet) 
        </div> 
        @{fi} 
        <div class="col-md-12"> 
        <div class="project-details"> 
         <div class="row align-items-center"> 
         </div> 
        </div> 
        </div> 
       </div> 
       </div> 
      </div> 
     </div> 
     </div> 
    </div> 
    </div> 
</div> 

답변

0

function view_all(){ 
    let self = this; 
    MODEL('myModel').all('myTable', (err, res) => { 
     if (err) throw err 
     self.view('properties', res); 
    }); 
으로도보기로 모델을 통과하는 데 필요한