일단 오늘자 (2017.03.01) 삽질 코드는 다음과같다
[app.js]
var express = require('express');
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : 'lucys2Ekfrlo',
database : 'o2'
});
connection.connect();
var app = express();
var bodyParser = require('body-parser');
var fs =require('fs');
app.use(bodyParser.urlencoded({ extended:
false }));
app.locals.pretty = true;
app.set('views', './views_mysql');
app.set('view engine', 'jade');
app.listen(3000, function(){
console.log('Connected 3000!! HAHA');
});
app.post('/topic/edit', function(req, res){
var
title = req.body.title;
var
description = req.body.description;
var
author = req.body.author;
var
sql='INSERT INTO topic (title, description, author) VALUES(?, ?, ?)';
connection.query(sql, [title, description, author], function(err,
results, fields){
if(err){
console.log(err);
res.status(500).send('post err');
}else{
res.redirect('/topic/'+ results.insertID);
}
});
});
app.get(['/topic', '/topic/:id'],
function(req, res){
var sql = 'SELECT id,title FROM topic';
connection.query(sql, function(err, i_topics1, fields){
var id=req.params.id;
if(id){
if(id=='edit'){
var sql = 'SELECT id,title FROM topic';
connection.query(sql, function(err, topics, fields){
if(err){
console.log(err);
res.status(500).send('get
err1');
}
res.render('editer',
{topics:topics});
});
}
var sql= 'SELECT * FROM topic WHERE id=?'
connection.query(sql, [id], function(err, topic, fields){
if(err){
console.log(err);
res.status(500).send('get err2');
}else{
res.render('view',
{topics:i_topics1, i_topic:topic[0]});
}
});
}else{
res.render('view', {topics:i_topics1});
}
});
});
[Editer.jade]
doctype html
html
head
meta(charset='utf-8')
body
h1
a(href='/topic') Server Side Javascript
ul
each topic in topics
li
a(href='/topic/'+topic.id)=topic.title
form(action='/topic/edit' method = 'post')
p
input(type ='text'
name = 'title' placeholder='title')
p
input(name='description' placeholder='description')
p
input(type ='text' name = 'author' placeholder='author')
p
input(type='submit' value("등록하기"))
================================================================
노랑색 형광팬 부분에서 타이틀이랑 작가 부분이랑 형식이 똑같아서 타이틀 라인을 복사해서 작가 라인에 붙여넣기를했는대... 이거때문에 개삽질을 하게했다
일단 placeholder 에만 집중해서 name 값을 안바꿔주어서 삽질을 하게되었다
중복된코드는 복사붙여넣기를 안쓰는방향으로 하는게좋지만! HTML같은
코드에서는 필요할때가 종종 있다. 이떄 위의 name같이 header값을 잘못주면 이리저리 엄한 js파일에서 오타가 나온게아닌가
뒤적거리다가 시간낭비 오지게 할수있다.
여튼 HTML같은 코드가 아니라면 복붙은 되도록 자게하도록하고(오타가 안난다는 가정하에..)
복붙을한다면 위에 .name, placeholder 같은 값들은 하나하나
안바꿔도되는지 다시한번 생각하자 복붙하고.
댓글 없음:
댓글 쓰기