sfPropelORMPlugin을 사용합니다. 웹 페이지 당 하나의 개체를 조작하면 Lazyload가 정상입니다. 하지만 수 백개의 DB 쿼리가 있다면 수백 가지가 있습니다. lazyload를 완전히 비활성화하거나 특히 무거운 페이지에서 필요한 열에 대해 비활성화하려면 지금까지 방법을 찾을 수 없습니다.Symfony에서 런타임시 모델 lazyloadness를 변경하는 방법?
1
A
답변
0
로드하려는 열을 설정할 수 있도록 피어에 추가 된 유틸리티 메소드. 이 유형의 DB 쿼리에 "의사 열 (pseudo columns)"사용. 또한이 "마크 업"을 이해하기 위해 재정의 hydrate()를 사용했습니다. 심포니가 데이터를 수화 시켰음에도 불구하고 심포니가 그것을 이해하지 못하고 의도 한대로 사용하지 못한다는 것을 알기 전까지는 모두 좋았습니다.
사이트가 부하가 높기 때문에 PS 참여가 옵션으로 고려되지 않았습니다.
1
쿼리를 작성할 때 join
모든 관계를 사용해야 만 모든 데이터를 단일 쿼리로 얻을 수 있습니다. 참고 : joinWithRelation()
을 사용해야합니다. 여기서 Relation
은 관련된 테이블 이름입니다.
0
윌리엄 듀 런드 (William Durand)의 대답을 상세히 설명하면 아마도 관계 함수와 관련된 모든 객체를 미리로드해야하는 Propel 함수 doSelectjoinAll()을 살펴 봐야 할 것입니다. 메모리와 관련하여 비용이 많이들 수 있음을 명심하십시오.
또 다른 기술은 필요한 조인을 사용하여 사용자 지정 조건을 만든 다음 수동 수화물 기법을 사용하여 기본 개체에 추가하는 것입니다. 필자가 필요로하는 데이터가 집계 또는 개체에 정확히 매핑되지 않은 다른 열을 사용하는 경우이 작업을 자주 수행합니다. 주위에 많은 hydrate() 예제가 있습니다.
관련 문제
- 1. 런타임시 sql_mode를 변경하는 방법
- 2. 런타임시 속성 접근자를 변경하는 방법
- 3. WPF : 런타임시 CurrentUICulture를 변경하는 방법
- 4. 런타임시 시간 스케줄러를 변경하는 방법
- 5. 런타임시 색상 테마를 변경하는 방법
- 6. 런타임시 뷰 모델 초기화
- 7. 런타임시 WinForms 응용 프로그램의 culture를 변경하는 방법
- 8. ListView를 런타임시 ItemControl을 VirtualizingStackPanel로 변경하는 방법
- 9. Inno 설치 : 런타임시 메시지를 변경하는 방법?
- 10. WPF + PRISM 런타임시 영역을 변경하는 방법
- 11. WPF : 런타임시 DataGrid 셀의 배경색을 변경하는 방법
- 12. 런타임시 gridview 셀의 이미지를 변경하는 방법?
- 13. Django는 런타임시 모델 메소드를 추가합니다.
- 14. 런타임시 CurrentCulture를 변경하는 방법은 무엇입니까?
- 15. 런타임시 '합계'조건을 변경하는 방법은 무엇입니까?
- 16. 런타임시 AndroidManifest를 변경하는 방법은 무엇입니까?
- 17. Symfony에서 validator를 주입하는 방법
- 18. 런타임시 엔티티 모델 데이터베이스 변경
- 19. yii에서 모델 안전 속성을 변경하는 방법
- 20. symfony에서 다음 오류를 해결하는 방법
- 21. Symfony에서 Object의 속성을 얻는 방법
- 22. symfony에서 템플릿을 PDF로 저장하는 방법
- 23. symfony에서 모듈 목록을 얻는 방법
- 24. Symfony에서 출력 이스케이프 처리
- 25. WPF : 런타임시 더블 클릭으로 버튼 내용 (텍스트)을 변경하는 방법
- 26. Dashcode (iPhone)에서 런타임시 xml 바인딩을 변경하는 방법
- 27. android : 런타임시 ListViewItem 배경을 변경하는 방법? (선택 대상이 아님)
- 28. 런타임시 최대 절전 모드 매핑 속성을 변경하는 방법
- 29. 런타임시 init 매개 변수를 변경하는 방법은 무엇입니까?
- 30. 런타임시 LinearLayout의 크기를 변경하는 방법은 무엇입니까?