适用fckeditor插件版本0.8->0.93
安装插件:grails install-plugin fckeditor
1. 配置插件:
在config.groovy中添加如下代码
fckeditor {
upload {
basedir = "/uploads/"
overwrite = false
link {
browser = true
upload = false
allowed = []
denied = ['html', 'htm', 'php', 'php2', 'php3', 'php4', 'php5',
'phtml', 'pwml', 'inc', 'asp', 'aspx', 'ascx', 'jsp',
'cfm', 'cfc', 'pl', 'bat', 'exe', 'com', 'dll', 'vbs', 'js', 'reg',
'cgi', 'htaccess', 'asis', 'sh', 'shtml', 'shtm', 'phtm']
}
image {
browser = true
upload = true
allowed = ['jpg', 'gif', 'jpeg', 'png']
denied = []
}
flash {
browser = false
upload = false
allowed = ['swf']
denied = []
}
media {
browser = false
upload = false
allowed = ['mpg', 'mpeg', 'avi', 'wmv', 'asf', 'mov']
denied = []
}
}
}
最后,会生成一个upload目录在工程的web-app的目录下,该目录用于放置上传的文件。该配置文件可根据实际情况自行配置。
2. 图片表情等弹出问题:是因为css冲突的缘故,修改main.css文件中.bady样式为
.body {
margin: 0 15px 10px 15px;
}
3. 将新闻内容字段设置成text类型后可上传很多图片以及文字,数据库以mysql为例
例如:
class CompanyNews
{
String title
String content
Date time
static constraints = {
title (blank:false)
content (blank:false,type:'text')
}
}
如果数据库中对应的表还是varchar可手动修改成text
4. fck标签的使用
例如:在create.gsp页面中
<td valign="top" class="value ${hasErrors(bean:companyNewsInstance,field:'content','errors')}">
<fckeditor:editor id='content' name='content' height="400" >${companyNewsInstance.content}</fckeditor:editor>
</td>
在show.gsp页面
<tr class="prop">
<td valign="top" class="name">内容:</td>
<td valign="top" class="value">${companyNewsInstance.content.decodeHTML()}</td>
</tr>
5. 获取新闻内容中的第一张图片
因为获取新闻内容是采用${companyNewsInstance.content.decodeHTML()}的方法,主要是decodeHTML()方法。
我采用的方式是自定义codec
import java.util.regex.Matcher
import java.util.regex.Pattern
/**
*
* @author Tony shen
*/
class CustomerCodec {
static decode = { theTarget ->
theTarget.decodeHTML()
def pattern= ~"/uploads/Image/[([a-z0-9]|.|/|\\-)]+.[(jpg)|(bmp)|(gif)|(png)]"
Matcher matcher = pattern.matcher(theTarget)
def out = new ArrayList()
while(matcher.find()){
out << matcher.group()
}
theTarget = out[0]
}
}
在前台页面中调用方式:
<image src="${companyNewsInstance.content.decodeCustomer()}"/>即可获取新闻内容中首张图片
6. 解决标题过长的办法
还是采用自定义Codec
/**
*
* @author Tony Shen
*/
class TitleCodec {
static decode = { theTarget ->
if (theTarget.length() >6 )
theTarget=theTarget.substring(0,6)+"..."
theTarget = theTarget
}
}
当标题字数超过6个字时,截取前六个字加上“…”
在前台页面中调用方式:
${companyNewsInstance.title.decodeTitle()}
分享到:
相关推荐
标题中的"grails-fck-editor-0.3.zip_grails_grails-fck-editor"表明这是一个与Grails框架相关的插件,具体来说是FCKeditor的一个版本。FCKeditor是一款广泛使用的开源富文本编辑器,它允许用户在网页上创建和编辑...
本文将详细介绍如何在Grails应用中使用FCK Editor,同时附带源码和操作截图,以帮助开发者快速理解和实现这一功能。 ### 1. 安装与引入FCK Editor 首先,我们需要下载FCK Editor的源码包,并将其解压到Grails项目...
为了在Grails环境中方便地使用SVN,我们需要安装一个支持SVN的客户端插件,这就是Subclipse。本指南将详细介绍如何在Grails环境中安装Subclipse插件。 首先,启动你的Eclipse集成开发环境(IDE),这是Grails通常...
FCK Editor是一款广泛使用的开源富文本编辑器,而Grails则是一个基于Groovy语言的现代Java平台上的Web应用框架。本文将深入探讨如何在Grails应用中集成FCK Editor,并提供源码和文档供参考。 **1. Grails框架介绍**...
对于Grails开发,我们需要的是Eclipse中的Grails插件,它能够提供对Grails项目的创建、运行、调试等一系列功能。 **Grails**是基于Groovy语言的全栈式Web开发框架,它借鉴了Ruby on Rails的设计理念,提供了快速...
Grails Pjax插件Pjax在Grails中。 Pjax类似于(turbolinks)[ ,在'A'标签,按钮和表单上工作。 参见_pjaxHeader grails templtate文件中的演示代码。 ## Pjax是什么? Pjax是一个jQuery插件,它使用ajax和pushState...
3. 扩展性:FCKEditor插件可以与其他Grails插件(如文件上传插件)配合使用,提供更强大的功能,如图片管理和多媒体资源管理。 4. 版本兼容:虽然grails-fckeditor-0.9.5是较旧的版本,但理解其工作原理有助于我们...
4. **Grails插件**:Grails生态系统中的插件极大地扩展了框架的功能,如Spring Security用于安全控制,GSP(Grails Server Pages)用于视图渲染,以及CouchDB或MongoDB插件实现NoSQL数据库的支持。 5. **...
Views 是 Grails 应用程序中的用户界面部分,通常使用 Groovy Server Pages (GSP) 文件编写。GSP 结合了 HTML、CSS 和 JavaScript 以及 Groovy 语法,允许动态生成页面内容。 **Services** Services 是可重用的...
Grails支持多种集成开发环境(IDE),如IntelliJ IDEA和Eclipse,通过特定的插件可以方便地在这些IDE中进行开发,提供代码提示、自动完成等功能,提升开发效率。 4. **规约配置** Grails遵循一套默认的规约,比如...
在Grails中,你可以在控制器的行动(Actions)中使用闭包来处理请求逻辑。此外,Groovy的动态特性允许你在运行时添加或修改类的行为,这在快速迭代开发中非常有用。 Grails框架提供了丰富的插件系统,可以快速扩展...
它还包含了Groovy Server Pages(GSP),这是一种基于Groovy的模板引擎,它允许开发者在页面中使用Groovy脚本。GSP标签库丰富,涵盖了数据绑定、表单处理、页面布局等多个方面。Grails的URL映射系统使得可以灵活地将...
标题中的“grails使用freemarker.rar”表明这是一个关于如何在Grails框架中应用FreeMarker模板引擎的资源包。FreeMarker是一个开源的、基于Java的模板引擎,它用于生成动态HTML或其他格式的文本,比如XML、PDF等。...
9. **插件系统**:Grails的插件系统极大地扩展了其功能,文档会讲解如何安装、使用及开发插件。 10. **测试**:文档会覆盖单元测试、集成测试和功能性测试,包括`grails test-app`命令的用法和测试框架的特性。 11...
注意,尽管Eclipse对Grails的支持相比IntelliJ IDEA和NetBeans可能稍显不足,但通过Groovy Eclipse插件的配置,开发者依然能在Eclipse中高效地进行Grails开发。不断更新插件和学习最佳实践将有助于提升开发体验。
Grails中文API的出现,为国内开发者提供了更友好的文档支持,使得理解与使用Grails框架变得更加方便。本文将深入解析Grails中文API中的关键概念和技术点。 1. **Grails框架概述** Grails是基于Spring框架构建的,...
第1章 寻找grails之旅 1.1 java的困惑 1.2 webc2.0时代 1.3 java的力量 ... 11.4 在grails中使用spring控制器 11.5 在grails中使用acegi 11.6 使用xfire创建soap服务 11.7 本章小结
3. **插件系统**:Grails 插件是一组可重用的功能模块,可以快速增强应用程序的功能,如Spring Security、Asset Pipeline等。 4. **命令行工具**:Grails 提供强大的命令行工具,支持创建项目、运行应用、生成代码...
在本文中,我们将深入探讨如何使用Groovy on Grails(简称Grails)和jQuery来构建一个功能丰富的Web日历应用程序。Grails是一个基于Java平台的全栈式框架,它简化了Web应用的开发过程,而jQuery则是一款强大的...