2016-09-06 1 views
2

JHipster를 처음 접하는 분, 나와 함께 곰 :. 엔터티 세부 정보보기에 관련 엔터티 목록을 표시하고 싶습니다. 어떻게해야합니까? 이 응용 프로그램에서는 일반적인 것이므로 각 엔티티를 수정하는 대신 (예 : 생성기를 수정하여) 일반적으로이 작업을 수행하는 것이 가장 좋지만 엔티티 편집은 다른 방법이 없으면 OK입니다.JHipster 3.x에서 관련 엔터티 목록으로 엔터티보기를 만드는 방법은 무엇입니까?

예 : 강의가 있으며 각 강의에는 여러 강의, 학생 및 클라이언트가 연결되어있을 수 있습니다. 이제 Course 필드 아래의 Course detail view에서 관련 Lessons, Students 및 Clients (예 : SalesForce의 기능과 유사)에 대한 세 가지 목록을 만들고 싶습니다.

질문에는 두 가지 측면이 있습니다. 어떻게 적절한 데이터를 얻을 수 있습니까 (직렬화)? 어떻게 뷰를 바꿀 수 있습니까? 후자 (변경보기)는 각 엔티티에 대해 손으로 만 수행하면 간단하지만, 생성 된 것은 좋을 것 같습니다.

이것은 일반적인 UX 테마 인 것으로 보입니다. 이 유스 케이스를 다루는 어딘가에 샘플 애플리케이션이 있습니까?

모든 포인터 주셔서 감사합니다! 한마디로

답변

1

는 :

1) 수업의 사용자 설정을 통해 더@JsonIgnoreCourse 당신의 CourseResource delievering 열망 가져온 개체를 확인합니다. 결국 JSON은 하나의 강좌를 호출하여 관련 항목을 포함해야합니다. 자세히

(편집) 다음에

entity Course { 
    courseName String 
} 

entity Lesson { 
    lessonName String 
} 

relationship OneToMany { 
    Course{lesson} to Lesson 
} 

먼저 Course 클래스에 가서 변경 설정 :

을 고려,이 같은 JDL 사용하여 응용 프로그램을 생성 :

@OneToMany(mappedBy = "course", fetch = FetchType.EAGER) 
//@JsonIgnore - remove this 
private Set<Lesson> lessons = new HashSet<>(); 

이 방법이 가장 빠르지 만 성능은 그렇지 않습니다. 개미, 당신이 코스를 질의 할 때마다, 당신도 수업에 참여하게됩니다. 이를 방지하기 위해 수동으로 조인하는 @Query를 리포지토리에 만들어야하지만 지금은 간단하게 유지할 것입니다.

@JsonIgnore의 제거는 암시 적 과정 표현의 일부가되는 교훈으로 이어질 것입니다, 그래서 당신이 그것을 표시 할 수있는 방법을 찾을 수있는 방법으로는 UI

2)에서이를 시각화 모든 옵션을 가지고 것입니다 당신이 원한다면

일반적으로 나는 발전기를 가지고있는 것이 좋다고 생각하지만, 생각보다 어렵습니다. 데이터를 표현하는 방법. 해당 엔티티에 대해 여러 개의 관계가있는 경우 탭을 사용합니까? 탭이 있지만 관계 함선이 하나뿐이라면 탭이 여전히 적당합니까? JHipsters 중앙 발전기에서이를 결정하는 데 여전히 충분합니까? 아니면 개발자에게 공개해야합니까?

나는이 토론을 worths, 생각하지만, 그럼에도 불구하고 내 대답은 짧은에 있다면

P.S :에 나 한테 물어이

안부를 달성하기 위해 몇 가지 JHipster 모듈이 수행 될 수 ...그것은 단지 늦었고 나는 열렬한 대답을 붙여 넣으려고 게으르다. :)

+0

안녕하세요 David - thx the kwik rply! 네, 첫 번째 부분을 좀 더 플래시 할 수 있다면 고맙겠습니다 :) 저는 API에 항상 문제가있는 하나의 이슈를 보았습니다.이 특별한 경우 (엔 티티 세부 사항보기)에서 모든 질문에 대한 답변을 원합니다. (하나의 왕복 여행이 충분하도록 레코드의 최대 개수까지) 의존성을 필요로하지만 때로는 핵심 코스 데이터로 더 희박한 수익을 원할 수도 있습니다. –

+0

(계속) 두 번째 (표시) 부분 :이 경우 관련 항목을 별도의 목록으로 같은 페이지에 표시하고 싶습니다 (또는 항목이 없으면 간단히 제거 할 수 있습니다). 세부 사항 스크린, 할 수있는, 문제 없음. –

+0

(계속) Overall : 저는 jhipster-jdl.jh 파일과이 "하이퍼 메타 프로그래밍"에 대해 조금 좋아합니다. 그래서 사실 실제로 .jh 파일에 필요한 것을 설명하는 방식으로 생성기를 확장하는 것이 재미있을 것입니다 (예를 들어 관련 목록을 표시해야하는 세부 화면의 경우). 그런 다음 코드가 자동으로 생성되거나 추가 DOM 노드는 설명 (다른 프레임 워크에서 일반적으로하는 것)에 기반하여 런타임 중에 생성됩니다. –

관련 문제