codeigniter (php framework)와 함께 사용하는 가장 좋은 ORM은 무엇이며 그 이유는 무엇입니까?codeigniter (php framework)와 함께 사용할 가장 좋은 ORM은 무엇이며 그 이유는 무엇입니까?
답변
다른 레코드 추상화 (ORM) 레이어를 사용하면 대부분의 시간을 지불 할 수 있다고 생각하기 때문에 활성 레코드를 사용해야한다고 생각합니다.
질문은 매우 모호하며 사용 사례에 따라 다릅니다.
어쨌든, 나는 내장형 데이터베이스 액세스보다 더 선호한다. 왜냐하면 단순히 (IMO 이상한 방법으로) CI의 DB 액세스로 작업하는 대신 쿼리를 작성하기 때문이다. 이것은 CI 구현보다 훨씬 더 많은 OO 느낌을 가지며 일반 SQL (복잡한 조인, 하위 선택,보다 진보 된 WHERE 조건)과 동일한 작업을 수행 할 수 있으므로 매우 강력합니다.
쿼리가 커밋되기 전에 액션을 수행 할 수 있음을 의미하는 쿼리의 프로세스로 넘어갈 수 있기 때문에, 커밋 된 후 규칙을 적용하는 등 많은 이점이 있습니다. 나는 이것을 CI에서 쉬운 방법으로 보지 못했습니다.
내가 말하는 내용을 보려면 문서의 예제를 읽으십시오.
Doctrine에는 CI와의 통합이 쉽지 않으므로 (인터넷에서 많은 게시물을 볼 수 있고 심지어 여기에서 볼 수있는 게시물도 많음) 멋진 새 규칙을 배울 필요가 없습니다.
사용자가 선택한 모든 ORM은 매우 가벼운 프레임 워크에 대한 오버 헤드 (CI의 기본 풋 프린트와 비교하여)가 큽니다. 따라서 강력한 데이터베이스 기능과 더 많은 추상화를 위해 경량 성을 희생합니다.
DrColossos가 암시 하듯이 Doctrine은 CI 응용 프로그램에 쉽게 연결할 수있는 훌륭하고 강력한 ORM입니다. CodeIgniter 2 & Doctrine 2의 경우 Setting up CodeIgniter 2 with Doctrine 2 the Right Way에서이 자습서를 사용할 수 있습니다.
저는 액티브 레코드를 선호합니다. 이미 그곳에 있으며, 나의 필요를 충족시키지 못한 상황에 직면하지 않았습니다. CodeIgniter 위에 다른 ORM을 사용하지 않았지만 대부분의 경우 불필요한 레이어가 추가 될 것으로 생각됩니다.
기본 제공 Active Record 도구가 제공하지 않는 기능은 무엇입니까?
액티브 레코드는 하나의 패턴 일 뿐이며, ORM 도구는이 패턴을 지원하지만 더 많은 것을 추가합니다 (클래스에 테이블 구성과 유사). CI의 표준 Active Record 클래스는 기본 인터페이스 만 제공합니다. – thomaux
하나의 옵션은 DataMapper의 ORM입니다 [? CodeIgniter를위한 ORM]의
그 이름은 오해의 소지가 있습니다. DataMapper 패턴은 ActiveRecord 패턴을 구현하지 않습니다. – beberlei
- 1. VBA에서 쿼리를 최적화하는 가장 좋은 도구는 무엇이며 그 이유는 무엇입니까?
- 2. 가장 좋은 ORM 프레임 워크는 무엇이며 그 이유는 무엇입니까?
- 3. Yii Framework와 함께 사용할 가장 좋은 IDE는 어느 것입니까
- 4. POINTER_32 - 무엇이며, 그 이유는 무엇입니까?
- 5. .NET Framework와 함께 SDK가 필요한 이유는 무엇입니까?
- 6. Django에서 사용하는 RDBMS는 무엇이며 그 이유는 무엇입니까?
- 7. Informix : "디스크"작업을 수행하는 가장 좋은 모드는 무엇이며 그 이유는 무엇입니까?
- 8. 이미지를 미리로드하는 것이 가장 좋은 방법은 무엇입니까 <img> 그리고 그 이유는 무엇입니까?
- 9. 정적 라이브러리 란 무엇이며 동적 라이브러리 란 무엇이며 그 차이점은 무엇이며 사용하는 것이 더 좋은 이유는 무엇입니까?
- 10. 데이터베이스 개발을위한 최고의 CASE 툴은 무엇이며 그 이유는 무엇입니까?
- 11. os.path.basename은 URL과 함께 작동합니다. 그 이유는 무엇입니까?
- 12. 그 이유는 무엇이며 request.env [ 'CONTENT_TYPE']과 request.content_type의 차이점은 무엇입니까?
- 13. 최고의 ASP.NET MVC 프레임 워크/아키텍처는 무엇이며 그 이유는 무엇입니까?
- 14. 좋은 UML 레퍼런스와 그 이유는 무엇입니까?
- 15. WAMP와 EasyPHP는 함께 살 수 있으며 그 이유는 무엇입니까?
- 16. 웹 개발자가 사용할 수있는 최고의 HTML WYSISYG 편집기는 무엇이며 그 이유는 무엇입니까?
- 17. 바이너리 데이터 (이미지, pdf, mp3, 비디오 등)를 mysql에 저장하는 가장 좋은 방법은 무엇이며 그 이유는 무엇입니까?
- 18. lzo와 lzf는 무엇이며 그 차이점은 무엇입니까?
- 19. 결함 bucket이란 무엇이며 그 원인은 무엇입니까?
- 20. Ruby의 조상은 무엇이며 그 용도는 무엇입니까?
- 21. Zend/CodeIgniter 프레임 워크와 함께 사용할 템플릿은 무엇입니까?
- 22. 함께 일하는 가장 좋은 해결책은 무엇입니까
- 23. 레일스에서 Heroku와 함께 사용할 좋은 .gitignore는 무엇입니까?
- 24. ContentEditable과 함께 사용할 좋은 WYSIWYG 편집기는 무엇입니까?
- 25. jQuery/Ajax를이 예제에서 CodeIgniter와 함께 사용하는 가장 좋은 방법은 무엇입니까?
- 26. CodeIgniter PHP 예외
- 27. 두 개의 비동기 작업을 Reactive Framework와 함께 연결하는 방법은 무엇입니까?
- 28. Pinax를 사용할 때의 가장 좋은 점은 무엇입니까?
- 29. FxCop을 사용해야합니까? 그 이유는 무엇입니까?
- 30. xml 파일을 조작하는 가장 좋은 방법은 무엇입니까?
가능한 중복 (http://stackoverflow.com/questions/3438198/which-orm-for-codeigniter) – BoltClock