2016-12-13 13 views
0

私は学校のプロジェクトで助けが必要です。私は解決を必要とする問題のリストを作成し更新するためのアプリを作っています。MEANを使用してデータを保存

私は、問題が挿入されるはずの入力フィールドを持っています。そして、ID、 "Open"ステータス、および日付スタンプを生成する必要があります。

次に、出力テーブルに問題が表示されます。私はdatabasのwhatsを表示できることを解決しました。今私は新しいデータを保存する部分を解決する必要があります。

私の計画は、Addボタンをngクリックして、AddIssueという名前の関数を呼び出すことです。そして、データトラフを送信し、データ

HTML

<div ng-controller="inputCtrl"> 
<p>New issue <input class="form-control" type="text" ng-model="newIssue"></p> 
<button ng-click="AddIssue()"> Add </button> 
</div> 

<div ng-controller="tableCtrl"> 
<table class="table table-striped"> 
<thead> 
    <tr> 
    <th>Status</th> 
    <th>Issue</th> 
    <th>Date</th> 
    <th>ID</th> 
    </tr> 
</thead> 
<tbody> 
    <tr ng-repeat="issue in issueList"> 
     <td>{{issue.status}}</td> 
     <td>{{issue.issue}}</td> 
     <td>{{issue.date}}</td> 
     <td>{{issue.id}}</td> 
    </tr> 
</tbody> 
</table> 
</div> 

私のJSファイルcontroller.js

var myApp = angular.module('myApp', []); 

// Controller for input 
myApp.controller('inputCtrl', function($scope) { 

// Call function when click on AddIssue btn 
$scope.AddIssue = function() { 

    console.log("Click click....") 

    // Use Post to send data to database  
    $http.post('/issueList').sucess(function(response){ 
     $scope.newIssue = 'New issue'; 
    }) 


} 

}); // End of input 

サーバーを格納するのにmoongoseを使用して$ HTTPポストを使用して。 js

/* Connect to db issues */ 
mongoose.Promise = global.Promise; 
mongoose.connect('mongodb://localhost/issues'); 

var db = mongoose.connection; 
db.on('error', console.error.bind(console, 'connection error:')); 

/* Connect to MongoDB */ 
db.once('open', function (callback) { 
console.log("Connected to db"); 

// Created b-schema 
issueSchema = mongoose.Schema({ 
    id: String, 
    issue: String, 
    date: String, 
    status: String 
}); 

// Create Model 
Issue = mongoose.model('Issue', issueSchema); 

これは私が来ていることがこれまでのところで、そして今私はどのように

をserver.jsするcontroller.jsからデータを送信する第一及び第二の私のMongoDB問題

+0

は見てみましょう。これは、MEANスタックを使用してtodoアプリを作成するための素晴らしい記事です:https://scotch.io/tutorials/creating-a-single-page-todo-app-with-node-and-angular。 –

答えて

0

にそれを保存するためにマングースを使用して助けを必要とPOSTのためにserver.jsにルートを定義する必要があります。その中にissueオブジェクトをmongodbに保存することができます。以下のような

何か:

//addIssue 
    app.post('/addIssue', function(request, response) { 
     var issue = new Issue({ 
      id: request.body.id, 
      issue: request.body.issue, 
      date: request.body.date, 
      status: request.body.status 
     }); 

     return issue.save(function(err) { 
      if(!err) { 
       return response.send(issue); 
      } else { 
       console.log("ERROR adding issue:" + err); 
      } 
     }); 
    }); 

は、あなたも、いくつかのNPMパッケージをインストールする必要があります。たとえば:

  • ボディパーサー
  • 特急

また、あなたがそれらをインポートする必要があるなど(NPMエクスプレスインストール)(NPM体-パーサがインストール)あなたのserver.jsファイルで:

var express = require('express'); 
var bodyParser = require ('body-parser'); 

これは、アイデアを明確にするための単なる例です。実稼働環境では、状況は少し異なります。私はあなたがあなたを助けるためにいくつかの例を見てすべきだと思う https://scotch.io/tutorials/setting-up-a-mean-stack-single-page-application

+0

ありがとう!私はこの解決策を試し、そのアイデアを使って作業します。 – mackeemackee

+0

私はissueSchemaを取得するのがなぜ機能ではないのか知っていますか? – mackeemackee

+0

はい。私の悪い!申し訳ありませんが、私は答えを更新しました。 – deChristo

関連する問題