2010-03-06 2 views
0

Plone 기반 포털에서 Liferay로 데이터를 마이그레이션해야합니다. 누구든지 그것을하는 방법에 대한 아이디어가 있습니까?Plone에서 Liferay로 데이터를 마이그레이션하거나 Plone의 Data.fs에서 정보를 검색하는 방법

어쨌든 Data.fs에서 데이터를 검색하고이를 JSON과 같이 쉽게 표현할 수 있도록 노력하고 있습니다. 이를 위해서는 Plone의 Data.fs.에서 가져와야 할 오브젝트를 알아야합니다. Data.fs에서 이미 Products.CMFPlone.Portal.PloneSite 인스턴스가 있지만 아무 것도 얻을 수 없습니다. 나는 이런 식으로 뭔가를 PloneSite 인스턴스를 얻을 할 싶습니다 : 물론

>>> import ZODB 
>>> from ZODB import FileStorage, DB 
>>> path = r"C:\Arquivos de programas\Plone\var\filestorage\Data.fs" 
>>> storage = FileStorage.FileStorage(path) 
>>> db = DB(storage) 
>>> conn = db.open() 
>>> root = conn.root() 
>>> app = root['Application'] 
>>> plone_site = app.getChildNodes()[13] # 13 would be index of PloneSite object 
>>> a = plone_site.get_articles() 
>>> for article in a: 
... print "Title:", a.title 
... print "Content:", a.content 
Title: <some title> 
Conent: <some content> 
Title: <some title> 
Conent: <some content> 

, 그렇게 간단 필요가 없었다. 난 단지 PloneSite 구조에 대한 정보와 그 데이터를 복구하는 방법을 원한다. 누구 생각 나니?

미리 감사드립니다.

+0

포털이 가장 필요로하는 작은 연구를하고 있습니다. 정말로 흥미로운 Im, 당신은 왜 Plone에서 Liferay로 이사 했습니까? –

+1

@MarcinJancewicz 나는 마이그레이션을 수행하기로 계약 한 Liferay 파트너에서 일했습니다. 실제로 Plone-Liferay 마이그레이션을 많이 수행했습니다. Plone (또는보다 정확하게 Zope)은 개발하고 유지하기가 어려웠습니다. 또한 ZODB는 데이터베이스 손상에 매우 취약했습니다. 나는 Plone과 직접적으로 일하지 않았지만 이것은 고객이 우리에게 말한 것입니다. OTOH, 나는 Liferay와 함께 많은 일을했으며 훌륭한 도구입니다. JSP, 서블릿, Struts, Spring 등을 잘 알고 있으면 공식 Liferay 과정을 통해 많은 시간을 절약 할 수 있습니다. 일단 모든 것을 알게되면 매우 생산적입니다. – brandizzi

답변

2

당신이 플론 (Plone) 사이트 개체의 연락을 취하는있어 후에는 사이트의 모든 콘텐츠 항목을 찾기 위해 카탈로그 쿼리를 수행 할 수 있습니다, 각각이 "카탈로그 뇌"의 목록을 반환

>>> brains = site.portal_catalog.unrestrictedSearchResults() 

을 항목에 대한 일부 메타 데이터가 포함되어 있습니다. 당신의 플론 (Plone) 사이트 전형 기반의 콘텐츠를 사용, 당신은 그 값을 검색 할 항목의 스키마의 필드를 통해 반복하고 각 필드의 접근을 사용할 수있다 가정

>>> for b in brains: 
...  obj = b.getObject() 

: 당신은 뇌에서 전체 항목을 얻을 수

을 ZODB 이후
>>> for field in obj.Schema().fields(): 
...  field_id = field.__name__ 
...  field_value = field.getAccessor(obj)() 

당신이하고있는 객체의 클래스를 정의 패키지뿐만 아니라, 파이썬 환경에서 아키 타입 존재의 올바른 버전이 필요합니다, 상점 파이썬 객체를 절인 객체 데이터베이스입니다 검색하려고합니다.

관련 문제