postman에서 no environment
미해결
비전공자를 위한 진짜 입문 올인원 개발 부트캠프
postman에서 우측 상단의 no environment를 클릭해도 다른 항목이 나오지 않습니다.
- postma
- 포스트맨
- tensorflow
- react-native
- environment
- react
- express
- 머신러닝 배워볼래요?
- javascript
- nodejs
- HTML/CSS
173만명의 커뮤니티!! 함께 토론해봐요.
미해결
비전공자를 위한 진짜 입문 올인원 개발 부트캠프
postman에서 우측 상단의 no environment를 클릭해도 다른 항목이 나오지 않습니다.
해결됨
장고 설계철학으로 시작하는 파이썬 장고 입문
안녕하세요, 현재 장고 AOP 실습 강의를 듣고 있으며 로그인 여부를 보여줄 수 있는 코드를 따라하고 있는데 캡처본 해당 부분에 <p> 태그 작성 이유에 대해 설명을 조금 더 듣고 싶습니다! <p> </p> 태그 없이도, logged by {{ user }}를 적으면 화면에 잘 나오는데 <p> </p> 태그 내에 해당 코드를 적는 이유가 궁금합니다. 화면 내에 좀 더 정갈하게 보여지기 위함일까요? 늘 친절한 답변 감사합니다 ^^
해결됨
장고 설계철학으로 시작하는 파이썬 장고 입문
안녕하세요, 강사님 :-) 수업을 듣다 오류가 발생하여 질문을 남깁니다. 도움 부탁드리겠습니다 ^^ python manage.py runserver 후 오류 화면 <app/views.py) ModuleNotFoundError: No module named 'app.templates.app.forms' 에러 확인 app > templates > app > forms.py 파일 확인 < forms.py > => PostForm 구현된 것 확인 제가 해결하려고 한 방법은 1) 오류 코드 확인(ModuleNotFoundError) 2) app > views.py 파일 내 코드 확인 해보니, from app.templates.app.forms import PostForm에 에러 줄 확인 3) forms.py 파일 내에 PostForm 구현 됐는지 확인 이 과정으로 오류를 해결하려고 했는데 PostForm 코드도 있는데 왜 ModuleNotFoundError 에러가 떴는지, forms.py 7번째 줄에(from app.templates.app .forms import PostForm) 빨간 줄이 쳐졌는지 잘 모르겠습니다... 오류 해결 접근 법이 잘못된 것인지 제가 수업을 듣다가 놓친 것이 있는지 강사님의 피드백에 필요합니다. 늘 잘 보고 있습니다. 감사합니다 ;-)
해결됨
프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
안녕하세요 수업중 의문이 있어서 문의드려요 print('%.8f' % (3.0123456789)) 이런 명령어를 입력하면 3.01234567 이 출력되야 하는게 아닌가요 3.01234568 이 출력이 됩니다. 왜 7이 생략이 되는걸까요?
미해결
대세는 쿠버네티스 (초급~중급편)
안녕하세요 강사님, Secrets에 아무것도 보이지 않습니다. authentication 에서도 exec 명령후 etc 안에 Kubernetes 디렉토리가 없어서 인증 키 실습을 못하고 건너 뛰었는데.. 같은 문제로 안되는 건지 설명 부탁 드립니다. 같은 문제면 어떻게 해결해야 할지 도 알려 주시면 감사하겠습니다.
미해결
[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
안녕하세요? RCNN의 경우 classification에 대한 loss는 구할 수 없고 다만 bounding box regression은 구할 수 있는지 이유가 궁금합니다. RCNN의 경우는 최종 값을 판별하는 분류기가 CNN과 분리되어 있어서 역전파를 할 수 없어 classification의 경우는 오차 함수를 구할 수 가 없다고 이해했습니다. 그런데 어떻게 bounding box regression은 Loss 값을 구할 수 있는지 궁금합니다. 구한 Loss 값으로 CNN이 업데이트가 가능한지요? 바쁘신 와중에 답변 주셔서 감사합니다^__________^
미해결
따라하며 배우는 리액트 테스트 [2023.11 업데이트]
혹시나 에러가 나신다면, package.json폴더에 "scripts": { "start": "react-scripts start", "build": "react-scripts build", "test": "react-scripts test --transformIgnorePatterns \"node_modules/(?!axios)/\"", "eject": "react-scripts eject" }, 로 변경 후 test를 종료 후 재 실행시키면 됩니다. 방법은 test에서 직접 스크립트 수정하거나 jest.config.js파일을 만들어 moduleNameMapper을 사용하시면 됩니다! 참고 https://stackoverflow.com/questions/73958968/cannot-use-import-statement-outside-a-module-with-axios https://jestjs.io/docs/configuration#modulenamemapper-objectstring-string--arraystring
미해결
[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 파이썬을 이용해 엑셀에서 자동줄바꿈 되는 코드를 알려주셔서 정말 감사하게 잘 활용하고 있는데요. 추가적으로 질문 드리고 싶은 부분은 자동 줄 바꿈의 경우는 원하는 위치에서 개행이 되지 않는데요. 원하는 위치에서 개행이 되게하는 코딩도 있을까요? 아래의 이미지는 자동줄바꿈을 했을 경우인데요. 위의 이미지처럼 자동줄바꿈을 해주려면 아래와 같은 코딩으로 해결이 됐는데요. ws['d1'].alignment = Alignment(wrap_text=True) 저는 아래의 이미지 처럼 줄바꿈을 하고 싶어서요 위와 같이 줄바꿈을 하려면 각각 아래처럼 변수에 넣고 코딩을 해주면 될까요? a= '12345' b='6789' 코딩을 어떻게 하면 좋을지 궁금해서 문의 드립니다. 구글링을 해봤는데, 자동줄바꿈 코딩은 있는데 수동 줄바꿈과 관련한 코딩은 못찾겠습니다.ㅠ
미해결
Slack 클론 코딩[실시간 채팅 with React]
채널생성 클릭하면 channeldata.map is not a function이라고 에러가 뜨는데 channelData뿌려지는곳에 ?옵셔널도 줬고.. 아래처럼 잘 작성한것같은데 어딜 놓쳤는지 모르겠습니다. 새로고침하면 추가된 채널명이 출력됩니다. workspace import fetcher from '@utils/fetcher'; import axios from 'axios'; import React, { FC, useCallback, useState } from 'react'; import { Navigate, useParams } from 'react-router-dom'; import useSWR from 'swr'; import { AddButton, Channels, Chats, Header, LogOutButton, MenuScroll, ProfileImg, ProfileModal, RightMenu, WorkspaceButton, WorkspaceModal, WorkspaceName, Workspaces, WorkspaceWrapper, } from './styles'; import gravatar from 'gravatar'; import Menu from '@components/menu'; import { Link } from 'react-router-dom'; import { IChannel, IUser, IWorkspace } from '@typings/db'; import { Button, Input, Label } from '@pages/signup/styles'; import useInput from '@hooks/useInput'; import Modal from '@components/modal'; import { toast } from 'react-toastify'; import CreateChannelModal from '@components/createChannelModal'; const Workspace: FC = ({ children }) => { const { workspace, channel } = useParams<{ workspace: string; channel: string }>(); const { data: userData, error, mutate } = useSWR<IUser | false>('/api/users', fetcher, { dedupingInterval: 2000 }); const { data: channelData } = useSWR<IChannel[]>(userData ? `/api/workspaces/${workspace}/channels` : null, fetcher); if (!userData) { return <Navigate to="/login" />; } const [showUserMenu, setShowUserMenu] = useState(false); const [newWorkspace, onChangeNewWorkspace, setNewWorkspace] = useInput(''); const [newUrl, onChangeNewUrl, setNewUrl] = useInput(''); const [showWorkspaceModal, setShowWorkspaceModal] = useState(false); const [showCreateChannelModal, setShowCreateChannelModal] = useState(false); const [showCreateWorkspaceModal, setShowCreateWorkspaceModal] = useState(false); //functions const onLogout = useCallback(() => { axios .post('/api/users/logout', null, { withCredentials: true, }) .then((res) => { mutate(res.data); }); }, []); const onClickUserProfile = useCallback(() => { setShowUserMenu(!showUserMenu); }, [showUserMenu]); const onClickCreateWorkspace = useCallback(() => { setShowCreateWorkspaceModal(true); }, []); const onCreateWorkspace = useCallback( (e) => { e.preventDefault(); if (!newWorkspace || !newWorkspace.trim()) return; if (!newUrl || !newUrl.trim()) return; //trim ->띄어쓰기 하나도 통과 돼버리는걸 막는다. axios .post( '/api/workspaces', { workspace: newWorkspace, url: newUrl, }, { withCredentials: true, }, ) .then((res) => { mutate(res.data); setShowCreateWorkspaceModal(false); setNewWorkspace(''), setNewUrl(''); }) .catch((err) => { console.dir(err); toast.error(error.response?.data, { position: 'bottom-center' }); }); }, [newWorkspace, newUrl], ); const onCloseModal = useCallback(() => { setShowCreateWorkspaceModal(false); setShowCreateChannelModal(false); }, []); const toggleWorkspaceModal = useCallback(() => { setShowWorkspaceModal(!showWorkspaceModal); }, [showWorkspaceModal]); const onClickAddChannel = useCallback(() => { setShowCreateChannelModal(true); }, []); return ( <div> <Header> <RightMenu> <span onClick={onClickUserProfile}> <ProfileImg src={gravatar.url(userData.email, { s: '28px', d: 'retro' })} alt={userData.nickname} /> {showUserMenu && ( <Menu style={{ right: 0, top: 38 }} onCloseModal={onClickUserProfile} show={showUserMenu}> <ProfileModal> <img src={gravatar.url(userData.email, { s: '28px', d: 'retro' })} alt={userData.nickname} /> <div> <span id="profile-name">{userData.nickname}</span> <span id="profile-active">Active</span> </div> </ProfileModal> <LogOutButton onClick={onLogout}>로그아웃</LogOutButton> </Menu> )} </span> </RightMenu> </Header> <WorkspaceWrapper> <Workspaces> {userData.Workspaces?.map((ws: IWorkspace) => { return ( <Link key={ws.id} to={`/workspace/${123}/channel/일반`}> <WorkspaceButton>{ws.name.slice(0, 1).toUpperCase()}</WorkspaceButton> </Link> ); })} <AddButton onClick={onClickCreateWorkspace}>+</AddButton> </Workspaces> <Channels> <WorkspaceName onClick={toggleWorkspaceModal}>Sleact</WorkspaceName> <MenuScroll> <Menu show={showWorkspaceModal} onCloseModal={toggleWorkspaceModal} style={{ top: 95, left: 80 }}> <WorkspaceModal> <h2>Sleact</h2> {/* <button onClick={onClickInviteWorkspace}>워크스페이스에 사용자 초대</button> */} <button onClick={onClickAddChannel}>채널 만들기</button> <button onClick={onLogout}>로그아웃</button> </WorkspaceModal> </Menu> {channelData?.map((v, idx) => ( <div key={idx}>{v.name}</div> ))} </MenuScroll> </Channels> <Chats> {children}</Chats> </WorkspaceWrapper> <Modal show={showCreateWorkspaceModal} onCloseModal={onCloseModal}> <form onSubmit={onCreateWorkspace}> <Label id="workspace-label"> <span>워크스페이스 이름</span> <Input id="workspace" value={newWorkspace} onChange={onChangeNewWorkspace} /> </Label> <Label id="workspace-url-label"> <span>워크스페이스 url</span> <Input id="workspace" value={newUrl} onChange={onChangeNewUrl} /> </Label> <Button type="submit">생성하기</Button> </form> </Modal> <CreateChannelModal show={showCreateChannelModal} onCloseModal={onCloseModal} setShowCreateChannelModal={setShowCreateChannelModal} /> </div> ); }; export default Workspace; createChannelModal import Modal from '@components/modal'; import useInput from '@hooks/useInput'; import { Button, Input, Label } from '@pages/signup/styles'; import { IChannel, IUser } from '@typings/db'; import fetcher from '@utils/fetcher'; import axios from 'axios'; import React, { useCallback, VFC } from 'react'; import { useParams } from 'react-router-dom'; import { toast } from 'react-toastify'; import useSWR from 'swr'; interface Props { show: boolean; onCloseModal: () => void; setShowCreateChannelModal: (flag: boolean) => void; } const CreateChannelModal: VFC<Props> = ({ show, onCloseModal, setShowCreateChannelModal }) => { const [newChannel, onChangeNewChannel, setNewChannel] = useInput(''); const { workspace, channel } = useParams<{ workspace: string; channel: string }>(); const { data: userData } = useSWR<IUser | false>(`/api/users`, fetcher); const { data: channelData, mutate } = useSWR<IChannel[]>( userData ? `/api/workspaces/${workspace}/channels` : null, fetcher, ); const onCreateChannel = useCallback( (e) => { e.preventDefault(); axios .post( `/api/workspaces/${workspace}/channels`, { name: newChannel, }, { withCredentials: true }, ) .then((res) => { setShowCreateChannelModal(false); mutate(res.data); setNewChannel(''); }) .catch((err) => { console.dir(err); toast.error(err.response?.data, { position: 'bottom-center' }); }); }, [newChannel], ); return ( <Modal show={show} onCloseModal={onCloseModal}> <form onSubmit={onCreateChannel}> <Label id="channel-label"> <span>채널</span> <Input id="channel" value={newChannel} onChange={onChangeNewChannel} /> </Label> <Button type="submit">생성하기</Button> </form> </Modal> ); }; export default CreateChannelModal;
미해결
파이썬 무료 강의 (활용편3) - 웹 스크래핑 (5시간)
코드 실행시 정보가 오지 않고 반응이 없습니다!
해결됨
대세는 쿠버네티스 (초급~중급편)
안녕하세요 강의 잘 보고 있습니다. Authorization 실습예제에서 궁금한 부분이 있는데 nm-02 네임스페이스를 생성하면 default serviceaccount가 같이 생성되자나요? 근데 clusterRole을 default serviceaccount와 연결하지 않고 sa-02라는 serviceaccount를 새로 만들어서 연결하는 이유가 있을까요?
미해결
따라하며 배우는 리액트 A-Z[19버전 반영]
따라 치면서 실습하는데 적용이 안 되길래 삽질 하다가 혹시나 싶어서 강의 자료를 다운 받아 npm run start 해 보았는데요 그것도 이렇게 적용이 안 되게 보이네요... 뭐가 문제일까요? ㅜ.ㅜ
미해결
MERN STACK 커뮤니티 : 시작부터 배포까지 알려주는 React
이거는 reple 입니다. 리플 모델입니다. 이거는 댓글 입력했을때 들어오는 값이랑 맨위에 사진17번째줄 콘솔입니다. 포스트아이디가 없습니다.. 포스트 area 에서 postInfo 를 콘솔한것이 이것 이며 여기서 props.postID 를 가져오지를 못해서.. 값이 안들어가는것 같습니다. 혹시 강의가 업데이트 되거나 제가 잘못한 부분이있을까요..? PostArea.js 에서 댓글지역으로 프롭이렇게 보냈습니다 영상과같이.
미해결
Nuxt.js 시작하기
안녕하세요. 게시판 형태의 nuxt 앱 배포환경을 고민하고 있습니다. 백엔드 API 서버들은 온프레미스 서버(사무실 서버)와 클라우드에 분산되어 있고, SSR에 따른 SEO와 로딩 속도와 같은 장점을 기대하고 Nuxt로 개발 중입니다. 선택지는 다음과 같지만, 2번이 우세한 상황입니다. vercel과 같은 SSR을 지원하는 PaaS를 사용하여 배포 리눅스 서버 위 도커 컨테이너로 배포 2번을 고려하고 있는 이유는 비용상의 문제보다는 성능과 기능 구현 때문에 고려하고 있습니다(Nginx에서 특정 ip 차단, pm2 프로세스 관리, 동일 서버에 올라간 백엔드 API 컨테이너와 유닉스 소켓으로 연결 등). 또한, 아마 다른 서비스에서 조만간 쿠버네티스를 도입할 것 같아 미래를 고려하는 점도 있습니다. 리눅스 도커 환경에 직접 배포할 때, 도커를 사용하는 부분은 문제가 없으나 스택을 어떻게 구성해야 할지 문의드립니다. 간단하게 찾아본 결과 Nginx + pm2 + node(nuxt) 구조에서 각 서비스가 빠지거나 포함되는 것 같은데, 서로 충돌하는 의견이 많은 것 같아 혹시 추천해주실 수 있는 스택이 있는지 문의드립니다. Nginx : 정적 컨텐츠와 빠르고 편리한 https(TLS), 리버스 프록시를 통한 보안과 속도 때문에 필요함. node로도 해당 기능들이 모두 가능하니 필요 없다는 주장도 있으나, 웹서버 점유율에서 node.js가 1~2%라는 자료들에 의하면 의구심이 듦. pm2 : 로그와 프로세스를 편리하게 관리하기 위해서 필요하다는 의견이 많으나, 도커 기반 환경에서는 오히려 도커나 k8s가 프로세스나 로그를 관리하는 것을 방해한다는 의견( https://www.docker.com/blog/keep-nodejs-rockin-in-docker/ )도 있음. 일단 현재는 docker-compose로 Nginx-pm2-node(nuxt) 형태로 개발하고 있습니다. 아마 네카라쿠배에서는 이런 부분이 인프라나 DevOps 쪽으로 분업되어 있어 강사님께서 이런 고민은 생소하실 수도 있겠다는 생각이 들지만, 저 말고도 타의로 프론트엔드를 시작한 분들이 있을 수 있겠다는 생각이 들어 올려봅니다 : )
해결됨
파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI, async, await)
어떤 정보를 포함해서 질문을 올리면 좋을까요??
해결됨
파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
강의내용대로 쭉 따라가면서 askcomapny경로에서 settings 폴더를생성 cd askcompany로 경로 이동후 git add .를 한뒤 git mv settings.py settings/common.py 로 파일이동 그 상태로 runserver를 해봤더니 CommandError: You must set settings.ALLOWED_HOSTS if DEBUG is False. 오류가 뜸 원래 경로에 settings.py파일을 다시 만들어 보고 runserver를 해봤더니 오류가 사라짐 옮기는 과정에서 문제가 있는건지는 모르겠네요 DEBUG = True 이고 ALLOWED_HOSTS = ['*'] 설정까지도 해봤는데 왜 저런 오류가 뜨는걸까요?
미해결
만들면서 배우는 리액트 : 기초
안녕하세요~ 수업 잘 듣고 있습니다. 처음 react, reactdom script 및 babel script 를 추가하고 서버를 보니 ReactDom 오류가 나네요. 추가해야 할 부분이 있을까요? Uncaught ReferenceError: ReactDom is not defined at <anonymous>:13:1 at i (babel.min.js:24:29679) at r (babel.min.js:24:30188) at o (babel.min.js:24:30596) at u (babel.min.js:24:30969) at f (babel.min.js:1:1812) at babel.min.js:1:6287
해결됨
따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 94강 13:55초를 보면 콘솔 창에 next-dev.js?3515:20 Invalid href passed to next/router: /u//r/ test02/043hzrH/test44 , repeated forward-slashes (//) or backslashes \ are not valid in the hre 와 같은 에러가 떠있습니다. [username].tsx에서 <Link href={`/u/${comment.post?.url}`}> 을 불러 올때 url에 '/r/test02/043hzrH/test44'가 담겨 오면서 슬래쉬(//)가 2번 입력되어 생기는 에러 같습니다. 제공된 소스코드에도 위와 같이 입력되어 있어요. 아래와 같이 '/'를 지우고 링크를 href에 넣어주면 에러가 사라지는데 이게 맞을까요? <Link href={`/u${comment.post?.url}`}>
해결됨
따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 백엔드 entities에서 Post, Sub, Comment는 아래와 같이 import Post from "../entities/Post" import Sub from "../entities/Sub" import Comment from "../entities/Comment" 처럼 불러올 수 있게 작성하셨는데 User만 import {User} from "../entities/User" 중괄호를 넣어서 불러와야 합니다. export default class User extends BaseEntity 가 아닌 export class User extends BaseEntity 로 작성한 이유가 있을까요?
미해결
남박사의 파이썬으로 실전 웹사이트 만들기
안녕하세요 강의 잘 보고있습니다. cnt = members.find({"email": email}).count() 관련해서 질문이 있는데요, 저번 강의에서도 find().count()에 버전 관련 오류가 발생했었고 이번에도 당연히 [AttributeError: 'Cursor' object has no attribute 'count’] 오류가 발생했는데요, 그래서 구글링을 통해 cnt = members.collection.estimated_document_count({"email": email}) if cnt > 0: flash("중복된 이메일 주소입니다.") return render_template("join.html") collection.estimated_document_count({"email": email}) 를 찾아서 적용했고 커서 오류를 해결했습니다. 이렇게 회원가입 db를 members로 잘 넘겼는데요, 이메일 주소 중복 부분에서 시크릿키 적용을 한 후에도 이메일이 중복돼도 회원가입이 되고 db가 넘어가더라구요. 그래서 또 구글링을 했고 cnt = members.count_documents({"email": email}) if cnt > 0: flash("중복된 이메일 주소입니다.") return render_template("join.html") count_documents({"email": email}) 코드로 문제 해결을 하기는 했는데요, 여기서 'count_documents'와 'collection.estimated_document_count'의 차이를 알고싶습니다. 아무리 찾아봐도 차이점을 못찾겠어요. 차이점 알려주시면 감사하겠습니다 ! 부탁드려요 !