在Liferay中Communities被翻译为社区。这个翻译让人云里雾里,不知所谓。
引用
Communities是什么?
A community is defined as a grouping of users by interest or skill set. For example, a “Pet Lovers" community would consist of users who have an interest in their pets, while a “Tech Support" community would consist of users who have the skills to provide technical support to an organization. A user can belong to any number of communities (NOTE: In previous versions of Liferay, communities were called groups). Communities are entities in and of themselves -- they do not belong to a specific organization or location.
A community is defined as a grouping of users by interest or skill set. For example, a “Pet Lovers" community would consist of users who have an interest in their pets, while a “Tech Support" community would consist of users who have the skills to provide technical support to an organization. A user can belong to any number of communities (NOTE: In previous versions of Liferay, communities were called groups). Communities are entities in and of themselves -- they do not belong to a specific organization or location.
如果要一个比较贴切的概念,我觉得类似于现在流行的圈子。在本文中,我还是使用community一词。
Ok,理解了community 的意思,接下来,我们就要试着创建一个community来真正体会一下作用。
启动Liferay,以管理员身份登录
添加Communities portlet。最大化这个portlet后,出现add按钮。
我们新建一个community 取名为java。其他的先保留默认设置
在我们新增的community后面出现了一排按钮。delete不用多说,本文中我们只讲述剩余中的三个按钮,edit、pages、assign。还有两个Permissions和Delegate留待后文权限部分再讨论。
首先来一点最直接的测试,点击pages按钮
出现public和private两个选项,但是其他的好像都类似哦!
先不管那么多,首先我们选择public,在name中输入"home",点击add。 在private中也如此增加。
好像没什么反应啊!!
不着急,在上方的“功能区”中如下图操作,显出出一个列表框
出现了java public和java private。
点击后出现了一个空白页面,我们可以在其中任意增加portlet。(不会增加portlet?在“功能区”中,选择add content图标,就是哪个十字)
这样我们就完成了community页面的配置。
那么public和private是什么区别呢?
引用
A public page is a page in your community that can be accessed by guests. As long as the guest has the appropriate URL (Friendly URLs will be discussed in the next section), the guest has permission to access any public page.
A private page is a page in your community that can only be accessed by logged in users who are part of your community. If a user is not logged in (i.e., the user is a guest) or if a user does not belong to your community, then the user cannot access your private page.
A private page is a page in your community that can only be accessed by logged in users who are part of your community. If a user is not logged in (i.e., the user is a guest) or if a user does not belong to your community, then the user cannot access your private page.
我们不防测试一下,按照上面的方法,切换到java public和java private两个页面,分别记下url,我的liferay测试环境里分别是
http://localhost:8080/c/portal/layout?p_l_id=PUB.1002.1
http://localhost:8080/c/portal/layout?p_l_id=PRI.1002.1
然后退出当前账户,果然public所在页面能够被任何人访问,而private不行。
但是这种url太诡异了,能不能有更好记的呢?当然可以,重新用管理员身份登录,使用Communities 中的pages。
打开pages配置界面,最后有virtual host。
在Friendly URL中输入/java后保存。
重复刚才退出的实验,只是这次的url使用
http://localhost:8080/web/java。
我们又学会一个功能,Friendly URL。
再来看看edit。
edit的功能粗看很简单,修改当前community的名称和描述,且慢,上面有一个open的选框是什么意思?我们先选上后再说。
哈,按钮有变化了。多出了一个Leave的图标
先点一下Leave,按钮又变成了join
再取消open,新增的按钮又消失了。
从这里我们知道了community的一个小功能,如果是open的community,那么portal 用户能够自由选择加入或者退出community。
那么除了open的community,还有其他办法么加入用户么?当然,这就是assign的作用,点击assign,出来一个复杂的页面,大家要熟悉这个页面,今后类似的页面会经常出现。
默认页面显示User下Current是创建者的名字,点击Organizations、Locations、User Groups,其中Current都是空的。
因为当community被创建的时候,只有创建者属于这个community。所以当前只有创建者的名字。
选择Available,其中有当前系统所有的用户。勾选某个用户后,点击Update Associations,该用户被添加到这个community中。
我们也可以间接的添加用户,如果选择Organizations、Locations、User Groups,那么这些组织、机构或者用户组的成员就被间接的添加到community中了。
通过这次学习,和大家一起了解了
community的概念:community是一组成员的页面,相当于圈子的作用
community的创建和页面设置:创建community后,可以设置public和private页面,public可以直接供未登录的guest查看,private不行。
Friendly URL:设置一个Friendly URL可以提供更友好的url。根据liferay的设置,public的url是/web/FriendlyURL的形式,private的是/group/FriendlyURL
assign:可以设置为open,也可以由管理员手工配置。
但是这次学习中没有讲解community的权限设置,包括如何设置community的管理权限,以及community上的各portlet的权限设置。