문제

Magento 관리자에서 그리드를 생성했지만 정렬, 필터, 검색과 같은 기능이 작동하지 않습니다. 이는 정보를 가져오기 위해 데이터베이스 테이블을 사용하지 않았기 때문입니다.나는 Redmine과 연결되는 웹 서비스를 사용하고 모든 정보를 얻습니다.검토 결과 Magento 그리드의 기본 정렬, 검색 및 필터는 모델이나 컬렉션에서만 작동한다는 사실을 발견했습니다. 그러나 동일한 작업을 수행할 수 있는 방법은 내 컬렉션(이 경우 내가 얻은 정보)을 사용하는 것 외에는 찾을 수 없습니다. 웹 서비스에서)

도움이 되었습니까?

해결책

나는 그것이 기여한다고 느끼는 것처럼 이것을 게시 할 것이라고 생각했지만, 당신의 질문에 완전히 대답하지는 않습니다.

저는 최근에 아닌 데이터베이스 소스에서 관리 패널 그리드를 지원하는 무언가를 해킹했지만 웹 서비스 호출을 염두에두고 작성되지 않았습니다.

미래에있는 사람들에게 유용 할 수 있습니다.

https://github.com/curvenient/collectionnodb

다른 팁

솔직히 말해서 엉망이에요.지적했듯이 Adminhtml 그리드 위젯은 다음과 같이 작동한다고 가정합니다. Varien_Data_Collection_Db 예를 들어, 아직 코드에서는 시행되지 않습니다.

/**
 * set collection object
 *
 * @param Varien_Data_Collection $collection
 */
//public function setCollection(Varien_Data_Collection $collection)
public function setCollection($collection)
{
    $this->_collection = $collection;
}

이 설정자는 그리드 위젯이 일반적인 방식으로 구축되었음을 의미하지만, 다음과 같은 몇 가지 가정이 있습니다. $_collection 객체는 컬렉션 클래스 계층 구조의 여러 메서드를 구현합니다.

  • ::_addColumnFilterToCollection() 전화 addFieldToFilter()
  • ::_prepareCollection() 전화 load()
  • ::_preparePage() 전화 setPageSize() 그리고 setCurPage()
  • ::_exportIterateCollection() 전화 getSize() 그리고 getLastPageNumber()
  • ...등등...

리소스 세트를 Varien_Data_Collection_Db 인스턴스와 각 엔터티를 Varien_Object 이 작업을 수행하려면.사용하고 싶은 그리드 상품이 많을수록(예:CSV로 내보내기) 수행해야 할 작업이 더 많아질 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 magento.stackexchange
scroll top