自定义Liferay 7.0.2 GA3核心DB列大小

时间:2017-03-08 10:05:36

标签: java liferay liferay-7

我需要将$arr1 = array ( 0 => array ( "id" => 1, "0" => 1, "project_id" => "a", "1" => "a", "title" => "Yellow", "2" => "Yellow" ), "1" => array ( "id" => 2, "0" => 2, "project_id" => "b", "1" => "b", "title" => "blue", "2" => "blue", ) , "2" => array ( "id" => 3, "0" => 3, "project_id" => "c", "1" => "c", "title" => "green", "2" => "green" ) ); $arr2 =array ( "0" => array ( "id" => 1, "0" => 1, "project_id" => "b", "1" => "b", "name" => "Ross", "4" => "Ross", "15" => "", "category" => "horse", "16" => "horse", ), "1" => array ( "id" => 2, "0" => 2, "project_id" => "b", "1" => "b", "name" => "Capone", "4" => "Capone", "category" => "cat", "16" => "cat", ), "2" => array ( "id" => 3, "0" => 3, "project_id" => "c", "1" => "c", "name" => "Streisand", "4" => "Streisand", "category" => "elephant", "16" => "elephant" ), "3" => array ( "id" => 4, "0" => 4, "project_id" => "a", "1" => "a", "name" => "Harper", "4" => "Harper", "category" => "frog", "16" => "frog" ) ); $new_arr=array(); foreach ($arr1 as $key => $value) { $new_arr_tmp=array(); $new_arr_tmp["id"]=$value["id"]; $new_arr_tmp["project_id"]=$value["project_id"]; $new_arr_tmp["title"]=$value["title"]; foreach ($arr2 as $key1 => $value1) { if($new_arr_tmp["project_id"] == $value1["project_id"]) { $new_arr_tmp[$value1["category"]]=$value1["name"]; } } $new_arr[]=$new_arr_tmp; } echo "<pre>"; print_r($new_arr); Organization.name扩展到VARCHAR(100)

我正在使用Liferay 7.0.2 GA3。

有一些机制可以覆盖VARCHAR(200)

或者其他可以帮助我的东西?

1 个答案:

答案 0 :(得分:0)

不鼓励更改核心数据库结构,并且会造成难以维护的混乱:可能存在假设当前长度的部分(即使我希望没有)。一般来说,无论如何都不鼓励查看数据库结构和内容。

话虽这么说,但我很想知道usecase使用名称很长的组织。想象一下:除了未来Liferay升级的维护任务之外,这还会在UI上产生真正的显示问题:组织名称可能出现在多个位置(例如,如果该组织附有站点)。您打算如何以不完全破坏用户界面的方式显示这些名称?

或者,总结一下:不要去那里。引入组织规则以使用更短的组织名称。恕我直言,甚至100个字符太长,不能实际使用。

另外,如您所愿ask in multiple places,多次生成相同的作品:Don't do this in future