Grails中配置FCKeditor时,需要下载FCK的插件才能进行使用。 海岸线网络圈9AR abRE
(1)创建一个web工程:grails create-app FCKDemo 海岸线网络圈"T6g1C3V*a dN#b
(2)进入FCKDemo的目录:cd FCKDemo
oE%Y-H~g.R,g ~W0(3)安装FCKeditor插件:grails install-plugin fck-editor
n7Y!Q2hozBI0mE0几分钟后安装完毕,grails会新建一个文件夹FCKDemo\plugins,在该文件夹下放置下载的插件。 海岸线网络圈(piZQ6Squ7MF3Q
(4)在FCKDemo\grails-app\conf下修改Config.groovy,在其最后添加一行:web.app.context.path=FCKDemo 因为项目的名称为FCKDemo,因此其代表web工程名称。
+z7w)Do9L#j(m0gZ5`0(5)创建一个Domain Class:grails create-domain-class Article
ALr7G\r9@D0编辑Article.groovy文件:
-w:G9D#F+Y0 class Article { 海岸线网络圈%[l3OR"N g9m
String title
*~(^j4| E8a.}&r,Zqo0 String content
1k!JY7P%}5S_JZ+fw0 Date CurrentDate 海岸线网络圈 [H/o*GSQ4f
海岸线网络圈Ba#n+V"|c,K
static constraints = { 海岸线网络圈 _S J*}gv#T1B'`FEd
title (blank:false)
g?9Q7W%sm&xQ X,D0 content (blank:false,maxLength:2048)
$J1i |+z yx\0 } 海岸线网络圈 lQT j#]
} 海岸线网络圈5s*Xj'iZz_gS
(6)生成Article的Controller和页面:grails generate-all Article 海岸线网络圈"z3r^.d~4]"u_
(7) 修改FCKDemo\grails-app\views\article中create.gsp
0j2t? fCi+y:K b0将: 海岸线网络圈$g0f$|(q+C
<tr class="prop"> 海岸线网络圈`T1@7[4XHG
<td valign="top" class="name">
#bu-?j)P~.k0 <label for="content">Content:</label> 海岸线网络圈b[+o%Sl
</td> 海岸线网络圈QVz E%y3F0s,dlg
<td valign="top" class="value ${hasErrors(bean:article,field:'content','errors')}">
m6Y#F8]"IsK,u Em0 <input type="text" id="content" name="content" value="${fieldValue(bean:article,field:'content')}"/> 海岸线网络圈B\?k FOk'X
</td> 海岸线网络圈)N2R;X V lLo
</tr>
I @`-d8~:|2L0改为: 海岸线网络圈 D1I0q vAnx
<tr class="prop"> 海岸线网络圈&x F9s`Q7PO
<td valign="top" class="name"> 海岸线网络圈+bn%X ~&t-Yj6\
<label for="content">Content:</label>
O3h4I:VYd _m0 </td> 海岸线网络圈#KD/o)V"`&i
<td valign="top" class="value ${hasErrors(bean:article,field:'content','errors')}">
9daV1^!O3K*P0 <fck:editor id='content' name='content' height="400" >${article.content}</fck:editor>
sFG5M5k0 </td>
3z1s @Fu0 </tr>
X zG z;i[Y|\Ee0海岸线网络圈&[V(i x#QY6x1Dp
修改FCKDemo\grails-app\views\article中editor.gsp 海岸线网络圈6[`'k\ s}1]E e
将:
l1o6|F v]uvE \0 <tr class="prop"> 海岸线网络圈1C"^;N;Ql
<td valign="top" class="name">
"~~db2z z_T0 <label for="content">Content:</label>
;G9\VY h d&s0 </td>
+A'T#u$J;G$F#\}0 <td valign="top" class="value ${hasErrors(bean:article,field:'content','errors')}">
x ]G@ P%]'|)C0 <input type="text" id="content" name="content" value="${fieldValue(bean:article,field:'content')}"/>
j/s,k\dp0 </td> 海岸线网络圈sD-o?$s:|8[
</tr>
]cK2w6U6eNI0改为: 海岸线网络圈'WS f9P'Etx
<tr class="prop">
_4U$RjA3V3p0 <td valign="top" class="name"> 海岸线网络圈C2F5IZ ya([ ]*m
<label for="content">Content:</label>
&`jT6C X0 </td>
a9YO-M#Y8^s @ W0 <td valign="top" class="value ${hasErrors(bean:article,field:'content','errors')}"> 海岸线网络圈9x.y^#T7N7c Wg,|{*gu
<fck:editor id='content' name='content' height="400" >${article.content}</fck:editor>
n3m]+c_;\*Vu0 </td> 海岸线网络圈-] Jzc;wE[
</tr> 海岸线网络圈]6X V'CQX.a8W
'E0b5T {t([1Y0(8)部署web工程:grails run-app 海岸线网络圈 p;rBN m J
在浏览器下输入:http://localhost:8080/FCKDemo 海岸线网络圈 r Jx:m ZA
"q7w:w L9xMi(R0测试创建一个article的页面
LE:["C X6c)n k0海岸线网络圈e/{dJy,v7A
编辑该页面 海岸线网络圈c4k(B5X$t"j8y
Update后的结果 海岸线网络圈ov5_+} p{Y-cz