묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Vue.js + TypeScript 완벽 가이드
두번째 프로젝트 권한 요청
두번째 프로젝트 강의 수강중 하단부분 링크타고 접속하면 page not found 404 뜨는데 권한 문제인가요?? gihub 계정은 kid4211-developer 입니다 - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결애플 웹사이트 인터랙션 클론!
모르겟습니다ㅠㅠ..
안녕하세요, 스크립트 에러가 나서ㅠ 어떤게 문제인지 모르겟습니다,, 아래 스크립트 소스 드리고, 에러가 나는건 현재 이거랑 같습니다. (() => { const sceneInfo = [ { // 0 type:'sticky', heightNum: 5, // 브라우저 높이의 5배로 스크롤하이트 세팅 scrollHeight: 0, objs : { container: document.querySelector('#scroll-section-0') } }, { // 1 type:'normal', heightNum: 5, scrollHeight: 0, objs : { container: document.querySelector('#scroll-section-1') } }, { // 2 type:'sticky', heightNum: 5, scrollHeight: 0, objs : { container: document.querySelector('#scroll-section-2') } }, { // 3 type:'sticky', heightNum: 5, scrollHeight: 0, objs : { container: document.querySelector('#scroll-section-3') } }, ]; function setLayout() { // 각 스크롤 섹션의 높이 세팅 for (let i = 0; 1 < sceneInfo.length; i++) { sceneInfo[i].scrollHeight = sceneInfo[i].heightNum * innerHeight; sceneInfo[i].objs.container.style.height = `${sceneInfo[i].scrollHeight}px`; } } window.addEventListener('resize', setLayout); setLayout(); })();
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
java8의 사용자의 경우 asIterator가 적용되지 않는데 이럴 경우는 어떻게 해야 할까요
private Map<String, String> createParamMap(HttpServletRequest request) { Map<String, String> paramMap = new HashMap<>(); request.getParameterNames().asIterator() .forEachRemaining(paramName -> paramMap.put(paramName, request.getParameter(paramName))); return paramMap; } 이런경우는 자바 8에서는 입력이 되지 않는데 어떻게 바꿔야 할까요 ?
-
미해결자바스크립트 비기너: 튼튼한 기본 만들기
코딩 시간 풀이입니다.
"use strict"; // 문자열을 넣을 배열 생성 var result = ["<ul>"]; // 숫자를 파라미터로 받아 해당 숫자가 들어간 <li id = id(number)>id(number)</li> 문자열로 리턴한다. function makehtmlline(number){ var line = "<li id=id" + number + ">id" + number + "</li>" return line; }; // 1부터 10까지 makehtmlline() 함수를 사용한 문자열을 만들고 result에 추가한다. for (var k = 1; k < 11; k++){ result.push(makehtmlline(k)); }; // ul 태그를 닫고, 문자열로 변환하여 출력한다. result.push("</ul>") document.body.innerHTML=result.join("");
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
zynq gpio external interrupt관련 질문있습니다.
안녕하세요. 보드를 통해 학습중에 문득 궁금한것이 타사 MCU처럼 External Interrupt 기능처럼 특정 SW를 눌러 GPIO핀에서 입력받아서 인터럽트를 처리하는 기능도 제공이 되나요? (예: STM32F 에서 hal driver제공하여 함수를 가져다 쓰기만 하면 사용 가능하도록) 그렇지 않으면 Interrupt함수를 만들어서 사용해야 하나요? 이런 경우 어떻게 접근해야 하는지.. 궁금합니다. 인터럽트 경우 while문에서 해당인터럽트가 발동하면 ISR에서 처리하도록 되어져 있는데 사용자가 구현이 가능한건가요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
SignatureDoesNotMatch: The request signature we calculated does not match the signature you provided. Check your key and signing method.
이미지 업로드 중 에러가 발생하여 질문드립니다. 제가 잘못된 정보를 제공했다고 하는 것 같은데 도저히 무엇이 잘못인지를 모르겠습니다...ㅠㅠㅠ 버킷 권한도 잘 설정한 것 같고 .env 파일과 vim으로도 액세스 키 복사하였는데도 그렇습니다.... 코드도 그대로 한 것 같은데 무엇이 문제일까요? AWS.config.update({ accessKeyId: process.env.S3_ACCESS_KEY_ID, secretAccessKey: process.env.S3_SECRET_ACCESS_KEY, region: "ap-northeast-2", }); const upload = multer({ storage: multerS3({ s3: new AWS.S3(), bucket: "react-nodebird-aws-s3", key(req, file, cb) { cb( null, `original/${Date.now()}_${path.basename(file.originalname)}` ); }, }), // 크기 제한을 지정 limits: { fileSize: 20 * 1024 * 1024 }, // 20MB }); router.post( "/images", isLoggedIn, upload.array("image"), async (req, res, next) => { // req.files 는 `image` 라는 파일정보를 배열로 가지고 있음. res.json(req.files.map((v) => v.location)); } ); 에러 검색했을 때 액세스 키에 /나 %가 포함되어 그럴 수 있다하여 그 부분도 확인해보았으나 그대로입니다ㅜㅜㅜ
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
nginx 필요
안녕하세요 ! 배포를 하는 도중 travis에서 test 통과는 다 했는데 elastic beanstalk에서 자꾸 에러가 나서 질문드립니다 ㅠ 현재 노드 서버 + RDS만 사용해서 nginx 설정은 따로 생략했는데 nginx 부분을 생략해서 에러가 나는 걸까요?? 백엔드만 배포하는 경우에도 nginx 설정이 필요한가요?!
-
미해결[하루 10분|C++] 누구나 쉽게 배우는 C++ 프로그래밍 입문
강의 하단 텍스트 논리곱 연산자 오타
강의 하단 텍스트에 정리된 논리곱 연산자가 &&가 아닌 논리합 연산자 ||로 작성되어 있습니다.
-
미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
회원가입시 에러메세지 관리 하는 부분에서 에러가 납니다... 도움 부탁드립니다..
리액트 기본 기능으로 회원가입 폼 만들기 17분 46초 에러메세지 js 코드 파이썬 시리얼라이저
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
질문있습니다~
하이 오더 컴포넌트는 템플릿(html)코드 재사용은 안되는 건가요?
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
props로 데이터받을 때 질문입니다
props: { info: { type: Object, default: () => ({}), }, // info: Object // info: {} }, UserProfile에서 props를 이런 식으로도 받을 수 있던데 아래 주석과 다른 차이가 무엇인가요?
-
미해결누구나 할 수 있는 안드로이드 앱 개발 - 1 (Kotlin)
null exception
똑같이 코드 따라치고 실행을 했는데 null exception이 나옵니다. java.lang.NullPointerException at com.my.githubapi.MainActivity$onCreate$1.onResponse(MainActivity.kt:31) for(str in response?.body()?.items!!){ 어떻게 해결해야되나요?
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
Auth Module의 역할
해당 프로젝트에서 jwt를 이용한 로그인을 구현하기 위해서 Auth Module을 추가하였습니다. 그리고, Auth Module 내부에 jwt에 대한 구현 및 전략 수립 후 Auth Service에서 JwtLogin을 구현하였습니다. 저는 Cats Module에서 Login기능을 구현하고 Cats에 대한 데이터 검증 후 JWT Token 발급을 Auth Service에서 제공하는 것이 Module에 역할에 맞는 기능들을 가지게 되어서 더 좋다고 생각이 들었습니다. Auth Module에 jwt토큰에 대한 발급 및 검증이라는 역할만 부여하는 것이 아니라 Login 기능을 전체(Cats에 대한 데이터 검증을 포함하는)를 구현하는 이유가 무엇인지 궁금합니다!
-
미해결리눅스 커널 해킹. A부터 Z까지
./start.sh파일
start,sh파일이 실행이안되요
-
미해결피그마(Figma)를 활용한 UI디자인 입문부터 실전까지 A to Z
그리드 숨기기
그리드 숨기기 단축키를 누르면 (컨트롤+g) 누구면 그룹화되고 그리드는 안없어지네요ㅜㅜ
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
영속성 컨텍스트와 LAZY 로딩 관계
안녕하세요. 영한님강의를 듣고 궁금한점이 있어서 질문드립니다. 영속성 컨텍스트와 Proxy, LAZY 강의를 들었을 때 Member 엔티티안에 Team 엔티티를 필드로 가지고 있고, LAZY로 연관관계를 설정하였을 때 , Member만 조회하였을 때는 Team은 아직까지 Proxy객체에 null로 있고, Team의 데이터를 조회했을 때 Proxy객체가 Team 객체를 참조하는걸로 이해했습니다. 그렇다면 Team의 객체가 null로 초기화 되어있다가 조회한 데이터로 초기화되는걸로 이해했습니다. 아니면 그냥 Select 쿼리만 나오고 Team proxy객체는 계속해서 null이고 Team 데이터를 조회 할 때만 select쿼리만 호출되는걸까요..? List<FMSCompany> contents = companies.getContent(); for (int i = 0; i < contents.size(); i++) { FMSCompany company = contents.get(i); FMSBranch branch = company.getBranches().stream().filter(fmsBranch -> Objects.equals(fmsBranch.getId(), company.getHqBranchId())).findFirst().get(); System.out.println(branch.getLocation() +", "+ branch.getCompany().getId() +", "+ branch.getBusinessRegistrationNumber() ); } } public class FMSCompany extends AbstractCompany { @JsonManagedReference @OneToMany(fetch = FetchType.LAZY, mappedBy = "company", cascade = CascadeType.ALL) private List<FMSBranch> branches = new ArrayList<>(); @JsonManagedReference @OneToMany(fetch = FetchType.LAZY, mappedBy = "company", cascade = CascadeType.ALL) private List<FMSBranchGarage> garages = new ArrayList<>(); @JsonIgnore @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) @JoinColumn(name = "hqBranchId", foreignKey = @ForeignKey(name = "fk_fms_company__fms_branch__id")) private FMSBranch hqBranch; @Column(insertable = false, updatable = false, columnDefinition = "BIGINT(20) COMMENT '본사 아이디'") private Long hqBranchId; // ATTRIBUTENAME: owner -> boss, ownerId -> bossId @JsonBackReference @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.DETACH) @JoinColumn(name = "ownerId", foreignKey = @ForeignKey(name = "fk_fms_company__fms_user__id")) @ToString.Exclude private FMSUser owner; @Column(columnDefinition = "TINYINT(1) DEFAULT 1 COMMENT '삭제 여부 (0: 삭제 안 함, 1: 삭제)'") private Boolean isDeleted = Boolean.FALSE; @Column(columnDefinition = "DATETIME DEFAULT NULL COMMENT '마지막 삭제 일시'") private LocalDateTime lastDeletedDateTime; // ATTRIBUTENAME: grantedRoles -> roles // @formatter:off @JsonIgnore @ManyToMany(fetch = FetchType.LAZY, cascade = CascadeType.DETACH) @ToString.Exclude @JoinTable ( name = "fms_company_role", indexes = { @Index(name = "idx_fms_company_id", columnList = "fms_company_id"), @Index(name = "idx_role_id", columnList = "role_id"), }, joinColumns = @JoinColumn(name = "fms_company_id", referencedColumnName = "id", foreignKey = @ForeignKey(name = "fk_fms_company_role__fms_company__id")), inverseJoinColumns = @JoinColumn(name = "role_id", referencedColumnName = "id", foreignKey = @ForeignKey(name = "fk_fms_company_role__role__id")) ) private List<Role> grantedRoles; } public class FMSBranch extends AbstractEntity { @Column(columnDefinition = "VARCHAR(20) COMMENT '지점 이름'", length = 20) private String name; @Column(columnDefinition = "VARCHAR(15) COMMENT '사업자등록번호'") private String businessRegistrationNumber; @Column(columnDefinition = "TEXT COMMENT '주소'") private String address; @Embedded private Location location; @Column(columnDefinition = "VARCHAR(20) COMMENT '연락처'") private String phone; @Column(columnDefinition = "TEXT COMMENT '설명'") private String description; // @Column(columnDefinition = "VARCHAR(20) COMMENT '조직 유형 (HEADQUARTER: 본점, AGENT_OFFICE: 지점)'") // @Enumerated(value = EnumType.STRING) // private Organization organization; // // @Column(columnDefinition = "VARCHAR(20) COMMENT '지점 상태 (NORMAL: 정상, BLOCKED: 정지)'") // @Enumerated(value = EnumType.STRING) // private ServiceStatus status; @Column(columnDefinition = "TINYINT(2) COMMENT '조직 유형 (0 - HEADQUARTER: 본점, 1 - AGENT_OFFICE: 지점)'") @Convert(converter = OrganizationConverter.class) private Organization organization; @Column(columnDefinition = "TINYINT(2) COMMENT '상태 (0 - BLOCKED: 정지, 1 - NORMAL: 정상)'") @Convert(converter = ServiceStatusConverter.class) private ServiceStatus status; @JsonBackReference @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.DETACH) @JoinColumn(name = "ownerId", foreignKey = @ForeignKey(name = "fk_fms_branch__fms_user__id")) @ToString.Exclude @EqualsAndHashCode.Exclude private FMSUser owner; @Column(columnDefinition = "BIGINT(20) COMMENT '소유자 아이디'", insertable = false, updatable = false) private Long ownerId; @JsonBackReference @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.DETACH) @JoinColumn(name = "companyId", foreignKey = @ForeignKey(name = "fk_fms_branch__fms_company__id")) @ToString.Exclude @EqualsAndHashCode.Exclude private FMSCompany company; @Column(columnDefinition = "BIGINT(20) COMMENT '업체 아이디'", insertable = false, updatable = false) private Long companyId; @Column(columnDefinition = "TINYINT(1) DEFAULT 1 COMMENT '삭제 여부 (0: 삭제 안 함, 1: 삭제)'") private Boolean isDeleted = Boolean.FALSE; @Column(columnDefinition = "DATETIME DEFAULT NULL COMMENT '마지막 삭제 일시'") private LocalDateTime lastDeletedDateTime; @JsonManagedReference @OneToOne(fetch = FetchType.LAZY, mappedBy = "fmsBranch", cascade = CascadeType.ALL) private FMSBranchPushStatus fmsBranchPushStatus; @JsonProperty(access = JsonProperty.Access.READ_ONLY) @Transient private String companyName; @JsonProperty(access = JsonProperty.Access.READ_ONLY) @Transient private CountInBranchDTO count; @JsonManagedReference @OneToMany(fetch = FetchType.LAZY, mappedBy = "branch", cascade = CascadeType.ALL) private List<FMSBranchGarage> garages = new ArrayList<>(); } FMSBranch의 데이터를 조회를 했음에도 불구하고 FMSBranch Proxy는 계속해서 null로 초기화 되어있습니다..
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
a href 질문입니다.
MemberSaveServlet.java에서 <a href=\"/index.html\">메인</a> 이 코드를 실행하기 전 위치는 http://localhost:8080/servlet/members/save 인데 index.html만 적어도 http://localhost:8080/index.html로 가지는데 원리가 궁금합니다. MemberFormServlet.java에서 <form action=\"/servlet/members/save\" 를 <form action=\"/index.html\" 로 바꾸면 index.html의 화면이 출력될꺼라고 예상했는데 URL은 http://localhost:8080/index.html 지만 Whitelabel Error Page가 나오더라구요 이 부분도 궁금합니다.
-
미해결Django REST Framework 핵심사항
PostSerializerDetail serializer를 이용해 직렬화하고, 해당 ViewSet을 router를 통해 url 매핑을 한 후 api2/post/<int:pk>(get) 엔드포인트에 request를 하면 에러가 발생합니다.
* VueDjAgencyDrf-untilCh7-2의 api2/views.py에서 (프로그래머가 직접 직렬화하는 것이 아니라 VueDjAgencyDrf-untilCh6의) PostSerializerDetail serializer를 이용해 직렬화하고, 해당 ViewSet을 router를 통해 url 매핑을 하면 아래와 같은 에러가 발생합니다... * 제가 추가한 코드는 다음과 같습니다. # api2/urls.py router = routers.DefaultRouter() router.register(r'post', views.PostViewSet) urlpatterns = [ ... path('', include(router.urls)), ... ] # api2/views.py def get_prev_next(instance): try: prev = instance.get_previous_by_update_dt() except instance.DoesNotExist: prev = None try: next_ = instance.get_next_by_update_dt() except instance.DoesNotExist: next_ = None return prev, next_ class PostViewSet(ModelViewSet): queryset = Post.objects.all() serializer_class = PostListSerializer pagination_class = PostPageNumberPagination def get_serializer_context(self): return { 'request': None, 'format': self.format_kwarg, 'view': self } def get_queryset(self): return Post.objects.all().select_related('category').prefetch_related('tags', 'comment_set') def retrieve(self, request, *args, **kwargs): instance = self.get_object() prevInstance, nextInstance = get_prev_next(instance) commentList = instance.comment_set.all() data = { 'post': instance, 'prevPost': prevInstance, 'nextPost': nextInstance, 'commentList': commentList, } serializer = PostSerializerDetail(instance=data) return Response(serializer.data) * 그런데 이 이슈는 아래와 같이 router를 쓰지 않으면 발생하지 않고 정상 동작합니다. path('post/', views.PostViewSet.as_view(actions={ 'get': 'list', }), name='post-list'), path('post/<int:pk>/', views.PostViewSet.as_view(actions={ 'get': 'retrieve', }), name='post-detail'), path('post/<int:pk>/like/', views.PostViewSet.as_view(actions={ 'get': 'like', }), name='post-like'), * 어떻게 하면 PostSerializerDetail를 통해 직렬화하고 해당 ViewSet이 router를 이용하도록 하여도 에러가 나지 않을 수 있을까요?
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
소스코드 변경하면 도커를 껐다가 켜지 않아도 반영되어야 맞나요?
처음엔 껐다가 켜야 된다고 하셨는데 docker-react-app강의 할때 보니 -v 옵션을 주면 소스코드변경후 도커를 껐다 켜지 않아도 자동으로 반영되는 것 처럼 보입니다. 제가 윈도우머신이라서 자동반영이 안되는건가요? 아니면 설정을 어떻게 하면 자동으로 반영되게 할 수 있는 건가요?
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
%f에 관한 질문
print('%06.2f' %(3.1245678))여기에서 06이 의미하는 것이 전체 자릿수가 6개이고 정수부분에서 남는 부분을 0으로 채운다는 의미로 예시로 주어주신 숫자를 출력하면 003.이런식으로 나오게 된것이라고 이해했는데, 0 과 공백말고 1, 또는 _ 이런식의 다른 방법으로는 정수자리를 출력할 수 없는것인가요? (113. __3. 이런식으로요..!) print('%_6.2f' %(3.1245678)) 이런식으로 하니깐 출력이 안된다고 뜨더라구요!