'페이지'목록에 웹 관련 조회 필드를 만드는 방법은 무엇입니까?
-
10-12-2019 - |
문제
SharePoint 사이트 컬렉션이 'http://microsoft.com/'가 있는데, 자식 웹이있는 것 : http://microsoft.com/news/
페이지 '목록에 조회 필드를 만들고 싶습니다.각 하위 웹 조회 필드에서 현재 웹 '페이지'목록을 가리켜 야합니다.
현재 모든 생성 된 필드는 루트 사이트에서 '페이지'lib와 관련이 있습니다.
필드 정의가 있습니다.
<Field Name="LookupToPages"
ID="{3B5B07A0-68DB-4BF6-AAAE-87B77CE430C6}"
Type="LookupMulti"
DisplayName="Related News"
Group="Intranet.ContentTypes"
Mult="TRUE"
Overwrite="TRUE"
SourceID="http://schemas.microsoft.com/sharepoint/v3"
List="Pages"
ShowField="Title"/>
.
이 필드는 pages lib에 사용 된 내 콘텐츠 형식에 추가되었습니다.
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<ContentType ID="0000"
Name="News"
Group="my froup"
Description="Page layout for intranet news."
Inherits="TRUE"
Version="0">
<FieldRefs>
<FieldRef ID="{3B5B07A0-68DB-4BF6-AAAE-87B77CE430C6}" Name="LookupToPages" />
</FieldRefs>
</ContentType>
</Elements>
.
범위 '사이트'와 '웹'을 사용하여 필드 정의를 추가하려고했습니다. 둘 다 같은 결과를 가지고 있습니다.루트 사이트를 가리키는 조회 컬럼이 있습니다.
이 필드 웹 관련 방법은 무엇입니까?
해결책
evgeny,
이것이 당신의 목록을 조회하는 경우 (즉, 관련 뉴스 기사와 같은 동일한 목록을 선택하려는 요소를 선택하려고합니다) 목록 속성을 "self"로 설정할 수 있습니다.
<Field Name="LookupToPages"
ID="{3B5B07A0-68DB-4BF6-AAAE-87B77CE430C6}"
Type="LookupMulti"
DisplayName="Related News"
Group="Intranet.ContentTypes"
Mult="TRUE"
Overwrite="TRUE"
SourceID="http://schemas.microsoft.com/sharepoint/v3"
List="Self"
ShowField="Title"/>
자세한 내용은 여기를 참조하십시오.
다른 팁
evgeny,
기능을 통해 목록 또는 콘텐츠 유형을 프로비저닝하는 경우 이벤트 수신기를 활용하는 것이 좋습니다.
짧은 시간에 필요한 작업은 목록에서 룩업 열을 만드는 것뿐입니다. 새 열에 대한 필드 링크를 가져온 다음 목록에 연결된 콘텐츠 유형에 필드 링크를 추가합니다.
이와 같은 것이 마이리스트, myListct 및 PageList 객체가 이미있는 경우 트릭을 수행해야합니다.
string fieldName = myList.Fields.AddLookup("Page Column Display Name", pageList.ID, true);
SPField field = myList.Fields.GetFieldByInternalName(fieldName);
SPFieldLink fieldLink = new SPFieldLink(invoiceField);
myListCT.FieldLinks.Add(invoiceFieldLink);
myListCT.Update();
.
.b
SP2013에서는 조회 컬럼을 만들 수 있습니다."정보 얻기"필드에서 사이트 페이지를 선택하십시오.
O 365도 쉽게 사용할 수 있으므로 JSOM을 사용하는 것이 좋습니다. 이 방법을 사용할 수 있습니다. FieldCollection.AddFieldAsxml (fieldschema, true, sp.addfieldOptions.AddToDeFaultContentType);
자세한 내용은 참조하십시오. http://josharepoint.com/2015/12/02/create-a-new-lookup-field-using-jsom-in-sharepoint-2013-office-365/