묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨남박사의 파이썬 기초부터 실전 100% 활용
음수 계산
음수 계산은 않되네요 ㅎㅎㅎ
-
실습 UI 개발로 배워보는 순수 javascript 와 VueJS 개발
질문있습니다!
삭제된 글입니다
-
React로 NodeBird SNS 만들기
TypeError: Cannot read property '0' of undefined 에러
삭제된 글입니다
-
미해결Flutter 입문 - 안드로이드, iOS 개발을 한 번에 (with Firebase)
ios 사진불러오기 오류 해결방법
<key>NSPhotoLibraryUsageDescription</key> <string>This app requires access to the photo library.</string> <key>NSMicrophoneUsageDescription</key> <string>This app does not require access to the microphone.</string> <key>NSCameraUsageDescription</key> <string>This app requires access to the camera.</string> root/ios/Runner/info.plist 파일에 위에내용 추가하시고 다시 실행시키면 오류 사라집니다~
-
미해결PWA 시작하기 - 웹 기술로 앱을 만들자
깃헙 repo 부탁드려요!!
인프런 아이디 : wlckdgus5833@naver.com 인프런 닉네임: wlckdgus5833 깃헙 username : nigostarr 깃헙email : wlckdgus5833@naver.com 부탁드립니다!!
-
미해결React로 NodeBird SNS 만들기
폼데이터로 포스팅 api 라우터 질문이여
upload.none()은 뮬터를 이용해 프론트에서 서버로 넘긴 폼데이터를 const onSubmitForm = useCallback((e) => { e.preventDefault(); if (!text || !text.trim()) { return alert('게시글을 작성하세요.'); } const formData = new FormData(); imagePaths.forEach((i) => { formData.append('image', i); }); formData.append('content', text); dispatch({ type: ADD_POST_REQUEST, data: formData, }); }, [text, imagePaths]); req.body에 세팅하기 위한 미들웨어 로직이다 이렇게 이해하면 되나여? 또 db에서 include 로직은 const fullPost = await db.Post.findOne({ where:{id:newPost.id}, include:[{ model:db.User, }, { model: db.Image, }], }); 인데 user는 create 할때 const newPost = await db.Post.create({ content:req.body.content, UserId:req.user.id, });이렇게 저장해서 포스트 테이블내의 정보이기 때문에iinclude 모델 이름 이러면서 그냥 그 id로 user 정보를 검색해서 가져오는것 그렇게 생각했는데여 Image는 같은 테이블에 없는데 어떻게 이미지 데이터를 가져오는거져? 이에 대해 알려주시면 감사여 ~!~! 전체 코드 ``` router.post('', isLoggedIn, upload.none(), async (req, res, next) => { // console.log("req.body : " , req.body); try { const hashtags = req.body.content.match(/#[^\s]+/g); const newPost = await db.Post.create({ content:req.body.content, UserId:req.user.id, }); if (hashtags) { const result = await Promise.all(hashtags.map(tag => db.Hashtag.findOrCreate({ where: { name: tag.slice(1).toLowerCase() }, }))); console.log("result : ", result); await newPost.addHashtags(result.map(r => r[0])); } if (req.body.image) { // 이미지 주소를 여러개 올리면 image: [주소1, 주소2] if (Array.isArray(req.body.image)) { const images = await Promise.all(req.body.image.map((image) => { return db.Image.create({ src: image }); })); await newPost.addImages(images); } else { // 이미지를 하나만 올리면 image: 주소1 const image = await db.Image.create({ src: req.body.image }); await newPost.addImage(image); } } const fullPost = await db.Post.findOne({ where:{id:newPost.id}, include:[{ model:db.User, }, { model: db.Image, }], }); res.json(fullPost); } catch (e) { console.error(e); next(e); } }); ```
-
미해결언리얼 엔진4 (Unreal Engine) 3D 횡스크롤 게임 만들기
강좌에 사용한 자료는 어디에서 받을수있나요??
강좌에 사용한 자료는 어디에서 받을수있나요??
-
미해결워드프레스 제대로 개발하기 - 어드민 편
아카이브 뛰우는대 부터 404 에러 뜨면서 안되네요
http://work.localhost/bookstore/book 이주소 호출 부터 404 뜹니다.. 추가한 포스트 하나도 링크로 열리지가 않아요.. 뭔가 단계를 빠트리고 설명하시는거 아니죠? 즉 아카이브를 하라는대로 추가 했고 주소가 나오는거 확인하고 해당 주소 적어도 404라는 말입니다.. 안되니까 당황 스럽네요.. 원인을 제가 찾아야 되는건지 후우.. 설명대라로면 당연히 되어야 하는 부분 같은대 말이죠
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
스토어 모듈화할 시 import
store 모듈화 할 때 todoApp.js의 getters, mutations속성을 getters.js, mutations.js를 import해와서 사용해도 되나요?
-
미해결밑바닥 부터 시작하는 머신러닝 입문
딥러닝 강좌 관련해서 질문올립니다.
딥러닝 강의는 언제 올라오는지 궁금해서 질문 남깁니다. 항상 좋은 강의 감사합니다.
-
미해결React로 NodeBird SNS 만들기
이미지 업로드할때
첫번쨰 인자값으로 image가 왜 들어가는지 알려주시면 감사여 ~!``` const onChangeImages = useCallback((e) => { // 입력한 파일 정보를 이렇게 가져올 수 있음 console.log(e.target.files); // 폼의 정보를 담을수 있는 객체를 선언 const imageFormData = new FormData(); // 입력한 파일 정보를 반복문으로돌려서 imageFormData에 저장 [].forEach.call(e.target.files, (f) => { imageFormData.append('image', f); }); dispatch({ type: UPLOAD_IMAGES_REQUEST, data: imageFormData, }); }, []); ``` imageFormData.append('image', f);그리고 useRef로 인풋 박스 const onClickImageUpload = useCallback(() => { imageInput.current.click(); }, [imageInput.current]); 이때 이미지 업로드 버튼이랑 파일 업로드 버튼을 별개로 만드는 이유와 중간에 current는 무슨 의미인지 알려주시면 감사여
-
React로 NodeBird SNS 만들기
이미지 업로드할때
삭제된 글입니다
-
미해결윤재성의 스프링 프레임워크 개발자를 위한 실습을 통한 입문 과정
주로 어떤방식을 많이 사용하나요??
마치 자바스크립트에서 똑같은 결과물을 여러방식으로 구현할수있는것처럼 스프링에서 동일한 작업이지만 사용하는 방식이 여러개로 구현되어있는거같은데 주입을할때 실무에서는 주로 어떤방식을 사용하나요?? 전부알고있어야 하는지 궁금합니다. ㅠ
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
from .sub.sub1 import *
강의에서 패키지 경로를 .sub.sub1와 같이 입력해도 실행이 된다고 설명해주셨는데 ModuleNotFoundError가 발생합니다
-
미해결Node.js 교과서 - 기본부터 프로젝트 실습까지
sequelize 사용 시 인코딩 에러인것 같습니다.
첨부된 에러 캡쳐를 보시면, 한글이 인코딩 되지 않고 mysql에 전달되어서 발생한 것 같습니다.. 인터넷에 검색해서 mysql 전체적인 인코딩 세팅을 변경하는 방법을 찾아서 해보고 있는데 잘 안되네요ㅠ 어떻게 하면 될까요?ㅠ
-
미해결React로 NodeBird SNS 만들기
질문이요
깃에서요 /ch8/front/components/PostImages.js if (images.length === 2) { return ( <> <div> <img src={images[0].src.replace(/original\//, 'thumb/')} width="50%" onClick={onZoom} /> <img src={images[0].src.replace(/original\//, 'thumb/')} width="50%" onClick={onZoom} /> </div> {showImagesZoom && <ImagesZoom images={images} onClose={onClose} />} </> ); } 에서 <img src={images[0].src.replace(/original\//, 'thumb/')} width="50%" onClick={onZoom} /> <img src={images[0].src.replace(/original\//, 'thumb/')} width="50%" onClick={onZoom} /> images[1] 이 되어야하는데 0 이여서 이미지 두개 올리면, 첫번째 사진이 두번 올라가네요 1. 아마 이부분이 오타인거같요??? <img src={images[0].src.replace(/original\//, 'thumb/')} width="50%" onClick={onZoom} /> <img src={images[1].src.replace(/original\//, 'thumb/')} width="50%" onClick={onZoom} /> 2. AWS 는 쭉 무료인가요? 무료 EC2 만 쓰면요 ?? 3. 깃에서는 https 가 있고 nodebird.com은 https 이던데요, https 설정 하려면, 따로 참고 할 만한 사이트가 있나요? 4. 노드 js 는 자바스크립트를 운용할 수 있게해주는 런타임 이잖아요 그러면 리액트는 프레임워크라고 해야하나요? 리액트 리듀서, 리덕스사가 이런거는 npm 패키지로 보아야 하는건가요? 그리고 express 는 프레임워크인 npm 패키지가 맞죠?? 이런 개념들은 그냥 검색해서 알아가는 수 밖에 없겠죠? 아니면 책 같은게 있나요..? 솔직히 노드js V8 엔진이라는건 들었는데, 깊게 알 지를 못하겠네요...
-
해결됨예제로 배우는 스프링부트 입문
마지막 강좌까지 정말 감사히 잘 들었습니다
좋은 강의 올려주셔서 감사합니다!
-
미해결파이썬 입문 및 웹 크롤링을 활용한 다양한 자동화 어플리케이션 제작하기
self.webEngineView.load(QUrl(url)) 부분에서 종료됩니다.
잘 따라가고 있었는데, 갑자기 종료되어서 코드를 한줄 한줄 확인해보았는데, self.webEngineView.load(QUrl(url)) 에서 종료가 됩니다. url을 네이버나 구글로 입력했을 경우는 웹사이트가 출력되는 것을 확인했는데, 유튜브 사이트는 그냥 종료가 되어버립니다. 무슨 문제가 있는 걸까요. 아래는 load_url 함수입니다. def load_url(self): url = self.urlTextEdit.text().strip() # strip() 공백 제거 # 정규 표현식 사용 youtube regex 검색 # v = re.compile('^https://www.youtube.com/?') if self.is_play: pass else: # if v.match(url) is not None: self.append_log_msg('Play Click') self.webEngineView.load(QUrl(url)) # self.showStatusMsg(url + "재생 중") # self.previewButton.setText("중지") # self.is_play = True
-
미해결프로그래밍, 데이터 과학을 위한 파이썬 입문
무엇이 잘못 되었을까요?
음.. 제가 문제를 잘못 이해한건지 모르겠으나, 우선 제가 파악한 대로 한 후, submit 을 실행하면 위에 형변환은 pass가 나오지만, 나머지 사칙연산 라인은 fail로 나옵니다. 무슨 문제일까요? # string과 string 더하기================================================ def add_string_string(str_1, str_2): result = add_string_string(str_1, str_2) return result # 사칙연산============================================================== def associative_law_add(a, b, c): result = commutative_law(a, b, c) return result def associative_law_mutiple(a, b, c): result = associative_law_mutiple(a, b, c) return result def distributive_law(a, b, c): result = distributive_law(a, b, c) return result # 지수연산============================================================= def exponent(base, power): result = exponent(base, power) return result
-
해결됨Node.js 교과서 - 기본부터 프로젝트 실습까지
같은 방식으로 코딩을 했는데요 이런 에러가 뜨네요.
D:\Study\Server\nodejs\nodejsLib\login\node_modules\sequelize\lib\model.js:230 throw new Error(`A column called 'id' was added to the attributes of '${this.tableName}' but not marked with 'primaryKey: true'`); ^ Error: A column called 'id' was added to the attributes of 'users' but not marked with 'primaryKey: true' at Function._addDefaultAttributes (D:\Study\Server\nodejs\nodejsLib\login\node_modules\sequelize\lib\model.js:230:15) at Function.init (D:\Study\Server\nodejs\nodejsLib\login\node_modules\sequelize\lib\model.js:1052:10) at Sequelize.define (D:\Study\Server\nodejs\nodejsLib\login\node_modules\sequelize\lib\sequelize.js:428:11) at module.exports (D:\Study\Server\nodejs\nodejsLib\login\models\user.js:2:22) at Object.<anonymous> (D:\Study\Server\nodejs\nodejsLib\login\models\index.js:15:28) at Module._compile (internal/modules/cjs/loader.js:971:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1011:10) at Module.load (internal/modules/cjs/loader.js:822:32) at Function.Module._load (internal/modules/cjs/loader.js:730:14) at Module.require (internal/modules/cjs/loader.js:864:19) at require (internal/modules/cjs/helpers.js:74:18) at Object.<anonymous> (D:\Study\Server\nodejs\nodejsLib\login\app.js:11:21) at Module._compile (internal/modules/cjs/loader.js:971:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1011:10) at Module.load (internal/modules/cjs/loader.js:822:32) at Function.Module._load (internal/modules/cjs/loader.js:730:14) at Module.require (internal/modules/cjs/loader.js:864:19) at require (internal/modules/cjs/helpers.js:74:18) at Object.<anonymous> (D:\Study\Server\nodejs\nodejsLib\login\bin\www:7:11) at Module._compile (internal/modules/cjs/loader.js:971:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1011:10) at Module.load (internal/modules/cjs/loader.js:822:32) npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! login@0.0.0 start: `node ./bin/www` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the login@0.0.0 start script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\dnatu\AppData\Roaming\npm-cache\_logs\2019-11-05T13_48_03_653Z-debug.log 테이블 코드는 선생님 코드와 같지는 않고 필드명과 테이블 명만 제가 원하는 대로 살짝 수정하긴 했습니다만 이것이 영향을 미치는 것 같지는 않습니다! index.js는 기본으로 생성되는 페이지 그대로 사용했습니다. user.js module.exports = (sequelize, DataTypes) => { return sequelize.define('user', { name:{ type: DataTypes.STRING(5), allowNULL: false, unique: false, }, id: { type: DataTypes.STRING(30), allowNULL: false, unique: true, }, passwd: { type: DataTypes.STRING(20), allowNULL: false, unique: false, }, age: { type: DataTypes.INTEGER(2).UNSIGNED, allowNULL: false, unique: false, }, phone_num: { type: DataTypes.INTEGER(12).UNSIGNED, allowNULL: false, unique: true, }, created_at: { type: DataTypes.DATE, allowNULL: false, defautlValue: sequelize.literal('now()'), }, store_name:{ type: DataTypes.STRING(20), allowNULL: false, unique: true, } }, { timestamp: false, underscored: true, }); }; // user 테이블 정리 // 이름(5), 아이디(30), 비밀번호(20), 나이(2), 휴대폰 번호(12), 계정생성일(DATE->default(now)), 마켓 이름(20) iteam.js module.exports = (sequelize, DataTypes) => { return sequelize.define('iteam', { iteam_name: { type: DataTypes.STRING(30), allowNULL: false, unique: false, }, item_price: { type: DataTypes.INTEGER(6).UNSIGNED, allowNULL: false, unique: false, }, item_count: { type: DataTypes.INTEGER(6).UNSIGNED, allowNULL: false, unique: false, }, item_description: { type: DataTypes.TEXT, allowNULL: true, unique: false, }, created_at:{ type: DataTypes.DATE, allowNULL: false, defautlValue: sequelize.literal('now()'), }, },{ timestamp: false, underscored: true, }); }; // store 테이블 정리 // 마켓 이름, 물건명, 가격, 물품 개 수, 물품 설명, 등록일자 index.js 'use strict'; const fs = require('fs'); const path = require('path'); const Sequelize = require('sequelize'); const basename = path.basename(__filename); const env = process.env.NODE_ENV || 'development'; const config = require(__dirname + '/../config/config.json')[env]; const db = {}; let sequelize; if (config.use_env_variable) { sequelize = new Sequelize(process.env[config.use_env_variable], config); } else { sequelize = new Sequelize(config.database, config.username, config.password, config); } fs .readdirSync(__dirname) .filter(file => { return (file.indexOf('.') !== 0) && (file !== basename) && (file.slice(-3) === '.js'); }) .forEach(file => { const model = sequelize['import'](path.join(__dirname, file)); db[model.name] = model; }); Object.keys(db).forEach(modelName => { if (db[modelName].associate) { db[modelName].associate(db); } }); db.sequelize = sequelize; db.Sequelize = Sequelize; //테이블 추가 db.User = require('./user')(sequelize, Sequelize); db.Iteam = require('./iteam')(sequelize, Sequelize); //관계 설정 db.User.hasMany(db.Iteam, { foreignKey: 'store_name', sourceKey: 'id' }); db.Iteam.belongsTo(db.User, { foreignKey: 'store_name', targetKey: 'id'}); module.exports = db;