2014-04-01 2 views
2

방금 ​​Symfony2 프레임 워크로 웹 페이지를 만드는 법을 배우기 시작했습니다.Yeoman vs Symfony

내가 심포니 즉, 너무 자신의 솔루션을 가지고, 등

지금 내가 알고 합치, 캐싱, 파일 축소를 처리하기 위해 보좌관 발전기에 의해 제공 그런트 작업을 사용하는 데 사용 해요 : 자산을() 도우미 , 그리고 Assetic.

내가 아는 바로는, yeoman 작업과 Symfony 메서드는 호환되지 않는 것 같습니다.

symfony {{ asset('asset-src-path') }} 구문을 사용하면 yeoman 작업이 제대로 수행되지 않습니다.

필자는 yeoman 전체를 버리고 Symfony 도우미 함수와 필터를 사용해야합니까?

나는 여주인을 선호한다. 나는 그것에 익숙해졌으며 나는 그 자산을 전처리하는 것을 좋아한다. 대지.

참고 : URL 재 작성 작업을 할 수 있도록 assetic() 도우미를 사용해야합니다.

+0

좋은 질문을 - 나는 그것이 프로젝트의 아키텍처에 따라 달라집니다 것 같아요.프론트 엔드와 백엔드 사이에 명확한 설명이있는 경우; 예를 들어, 프론트 엔드가 각도를 사용하는 단일 페이지 응용 프로그램이고 Symfony2가 API 계층 인 경우 명확하게 두 개의 프로젝트/구성 요소로 응용 프로그램을 분리하는 것이 좋습니다. 그러나 나는 이것이 당신 시나리오에서 그렇지 않다고 가정한다. 흥미롭게도 Symfony2 용 yeoman 생성기가 있습니다. 좀 봐 볼만한가? https://www.npmjs.org/package/generator-symfony –

+0

그걸 확인했지만 그 자산은 프로젝트 관련 URL 대신 절대 URL로 주어졌습니다. ": {{asset ('images/asd.png')}}} '대신'/images/asd.png '를 입력하십시오. 그건 분명히 의미없는 일입니다. 어쨌든 조언을 주셔서 감사합니다! ^^ – ZeeCoder

+1

Darn :) 글쎄요, 재미있는 질문입니다. 다른 사람들도 이와 비슷한 온라인상의를하고 있습니다. 자신에게 맞는 것을 찾으면 자기 답을 추가 할 가치가 있습니다! –

답변

1

내가 알 수있는 한, 내가 원하는 것을 성취 할 수있는 쉬운 방법이 없습니다.

다행히도,이 질문에 씨름하는 진짜 이유가 없습니다. 제 질문에서 언급했듯이, Symfony는 Assetic을 가지고 있습니다. 이것은 대단한 해결책입니다.

프로젝트에서 yeoman + symfony 솔루션을 사용해 보았는데 궁극적으로 효과가 있었지만 실제로는 그만한 가치가 없다고 생각합니다. 보좌관은 당신이 언급 물건을 수행하지 않습니다

건배

0

는, 단순히 구성 발전기입니다. yeoman은 개발자에게 몇 가지 옵션을 묻는 메시지를 표시 한 다음 폴더에 파일 전체를 덤핑하는 것보다 다운로드 만하면됩니다. 한 번 실행됩니다. 다른 도구를 스캐 폴딩하기위한 것입니다.

그랑트는 Node.js에 내장 된 작업 주자입니다. 그것은 반복을 자동화한다는 점에서 여주인과 다소 비슷하지만, 여주인이 떠나는 곳을 대신합니다. yeoman은 프로젝트가 시작될 때 실행되고 결코 다시는 실행되지 않지만 (일반적으로), 개발 중에는 불평이 지속적으로 실행됩니다. 여기서 큰 차이점은 yeoman의 발전기와 grunts 작업이 간신히 서로 만나는 것입니다. yeoman은 꿀꿀 소리로 만들지 않으며 그 반대도 마찬가지입니다. Yeoman 생성기는 예를 들어 Gruntfile.js을 멋지게 구성 할 수 있지만 새로운 요구 사항에 맞게이 Gruntfile.js를 보강하는 것은 개발자의 몫입니다.

Symfony2는 PHP로 작성된 웹 프레임 워크입니다. yeoman을 사용하여 Symofny2 앱을 스캐 폴딩하고, Grunt로 특정 작업을 할 수 있습니다 (Symfony2는 자체 작업 주자와 함께 배송되지만, Grunt는 프런트 엔드에서 여전히 뛰어납니다). Symfony2는 매우 풍부하고 역동적 인 모듈로, HTTP 요청과 응답 (다른 것들 중에서도)을 처리합니다. Grunt를 Symfony2에 연결하는 Yeoman 생성기를 작성하거나 Symfony2의 콘솔 구성 요소를 사용하여 작업을 실행할 수 있습니다.

3 개 모두 유연하지만 상호 교환 할 수는 없습니다. 그들은 모두 다른 것들과 관련이 있습니다.

이 연결된 질문에 적용 Yeoman vs UrlRouting

+0

긴 답변을 보내 주셔서 감사합니다! 나는이 도구 들간의 차이점을 안다. Symphony 템플릿에 내 의존성을 연결하는 데 어려움을 겪고 있었다. Yeoman이 만든 Grunt 작업을 제대로 구성 할 수 없었기 때문이다. 현재 Gulp와 협력 중이며 프론트 엔드 워크 플로우를 재 작업하는 중이므로 Symfony와 wiredep를 함께 사용하려고 노력할 것입니다. (Assetic의 수동 "asset_version"업데이트보다 해시 이름의 자산 솔루션을 선호합니다.) 또한이 링크는 툴툴 거리는 해결책이 될 수 있습니다. https://github.com/stephenplusplus/grunt-wiredep/issues/108 – ZeeCoder

+0

Yeoman + Symfony가 아니라 Yeoman + Symfony에게 묻습니다. –

+0

그래, 다시 생각해 보면 나는 그들이 정말 잘 어울리지 않는 것처럼 느꼈다. 그래서 나는 제목에서 "vs"가 적절하다고 생각했다. :) 이제 나는 조금 지나치게 과장된 것 같아. – ZeeCoder