seungmi

버그 수정

분류작업이 temp.json파일생성보다 먼저 시행되도록 수정
Showing 1 changed file with 37 additions and 31 deletions
...@@ -39,7 +39,7 @@ app.get(['/food', '/food/:id'], function(req, res) { ...@@ -39,7 +39,7 @@ app.get(['/food', '/food/:id'], function(req, res) {
39 //사용자가 호출한 search page 39 //사용자가 호출한 search page
40 app.post('/food/search', function(req, res) { 40 app.post('/food/search', function(req, res) {
41 var title = req.body.title; 41 var title = req.body.title;
42 - res.render('map.ejs',{ 42 + res.render('map.ejs', {
43 title: 'Search', 43 title: 'Search',
44 searching: title 44 searching: title
45 }); 45 });
...@@ -60,42 +60,48 @@ app.post('/food/recommendation', function(req, res) { ...@@ -60,42 +60,48 @@ app.post('/food/recommendation', function(req, res) {
60 var list = { 60 var list = {
61 food: [] 61 food: []
62 }; 62 };
63 - for (var foods in users) { 63 +
64 - if ((!price || users[foods]['price'] == price) && (!shape || users[foods]['shape'] == shape) && (!kinds || users[foods]['kinds'] == kinds)) { 64 + function add(users, price, shape, kinds, list, callback) {
65 - list.food.push(foods); 65 + for (var foods in users) {
66 + if ((!price || users[foods]['price'] == price) && (!shape || users[foods]['shape'] == shape) && (!kinds || users[foods]['kinds'] == kinds)) {
67 + list.food.push(foods);
68 + }
69 + // $('<li>').text(foods).appendTo('#users');
66 } 70 }
67 - // $('<li>').text(foods).appendTo('#users'); 71 + callback(list);
68 } 72 }
69 73
70 - fs.writeFile('data/temp.json', JSON.stringify(list), "utf8", function(err) { 74 + add(users, price, shape, kinds, list, function(list) {
71 - if (err) { 75 + fs.writeFile('data/temp.json', JSON.stringify(list), "utf8", function(err) {
72 - console.log(err); 76 + if (err) {
73 - res.status(500).send('Internal Server Error'); 77 + console.log(err);
74 - } else { 78 + res.status(500).send('Internal Server Error');
79 + } else {
75 80
76 - fs.readFile('data/temp.json', 'utf8', function(err, data) { 81 + fs.readFile('data/temp.json', 'utf8', function(err, data) {
77 - if (err) { 82 + if (err) {
78 - console.log((err)); 83 + console.log((err));
79 - res.status(500).send('Internal Server Error'); 84 + res.status(500).send('Internal Server Error');
80 - } else { 85 + } else {
81 - var food = JSON.parse(data)['food']; 86 + var food = JSON.parse(data)['food'];
82 - var length = food.length; 87 + var length = food.length;
83 - var rand = Math.floor(Math.random() * length); //(Math.random() * (max - min)) + min 88 + var rand = Math.floor(Math.random() * length); //(Math.random() * (max - min)) + min
84 - var food_value = food[rand]; 89 + var food_value = food[rand];
85 - console.log(rand); 90 + console.log(rand);
86 - res.render('print.ejs', { 91 + res.render('print.ejs', {
87 - title: 'Recommendation', 92 + title: 'Recommendation',
88 - description: 'We recommend this...', 93 + description: 'We recommend this...',
89 - randvalue: food_value 94 + randvalue: food_value
90 - });//rander closed 95 + }); //rander closed
91 - } 96 + }
92 - });//readFile closed 97 + }); //readFile closed
93 - } 98 + }
94 - });//writeFile closed 99 + }); //writeFile closed
100 + });//add closed
95 101
96 } 102 }
97 - });//readFile closed 103 + }); //readFile closed
98 -});//post closed 104 +}); //post closed
99 105
100 106
101 107
......