我有一个数据库表TableA,它有一个列'theDate',数据库中的数据类型是DATE.
当我通过GORM将java.util.Date保存到'theDate'时,当我通过从TableA执行select*来查看表中的数据时,它似乎只保存日期值.
但是,当我运行如下查询时:
select * from TableA where theDate = :myDate
Run Code Online (Sandbox Code Playgroud)
没有找到结果,但是如果我运行的话;
select * from TableA where theDate <= :myDate
Run Code Online (Sandbox Code Playgroud)
我确实得到了结果.
所以就像时间是相关的.
我的问题是如何保存日期和查询完全忽略时间的日期,只是在确切的日期匹配?
谢谢.
注意:我也尝试过使用sql.Date和util.Calendar但没有成功.
我的Grails代码有一个搜索功能,在执行findAllBy查询后重定向到另一个控制器操作:
def results = Foo.findAllByBar(baz)
redirect(action: "result", params: [results: results])
Run Code Online (Sandbox Code Playgroud)
findAllByBar按预期返回带有模型的ArrayList,但在重定向之后,接收操作获得一个String数组.更糟糕的是,当只有一个结果时它甚至没有得到一个数组,它只是得到一个字符串.
鉴于我必须在接收视图中迭代结果,在字符串上执行它将仔细地单独打印每个字母.我们都同意这可能不是理想的行为.
我有一个域类,如:
class Product {
String name
String number
}
Run Code Online (Sandbox Code Playgroud)
而我只想在数据库中创建名称字段作为列,我将在代码中生成数字字段,我不希望它成为数据库中Product表的列.
最好的方法是什么?
我正在使用Grails框架.在我的用户控制器中,我有一个名为"active"的布尔字段,它控制是否允许用户登录.登录操作在用户登录时检查此值.
我的域名:
class User {
Boolean active
}
Run Code Online (Sandbox Code Playgroud)
我的观点(edit.gsp):
<g:select id="active" name="active" from="${[1,0]}" value="${userInstance?.active}" />
Run Code Online (Sandbox Code Playgroud)
该值正确保存到数据库中,但我希望"帐户状态"下拉列表显示"已启用"或"已禁用",而不是现在的"1"或"0".
它还应该在加载编辑页面时显示当前值.目前,即使用户在数据库中具有值"0",它也始终显示值"1".
这看起来很容易,但是我还没有找到任何人在GSP中设置下拉值的例子,到目前为止我没有尝试过任何工作.谢谢!
我在 Grails 项目中有图像文件,例如:
grails-app/assets/images/admin/img1.jpg
Run Code Online (Sandbox Code Playgroud)
我试图将其显示为:
<g:img dir="images/admin" file="img1.jpg">
Run Code Online (Sandbox Code Playgroud)
在开发环境(Grails 2.4)中,它没有出现。我得到 404。但是,如果我将图像复制到:
grails-app/assets/images/img1.jpg
Run Code Online (Sandbox Code Playgroud)
并更改如下代码:
<g:img dir="images" file="img1.jpg">
Run Code Online (Sandbox Code Playgroud)
有用。
我正在使用的插件:
build ":tomcat:7.0.55"
// plugins for the compile step
compile ":scaffolding:2.1.2"
compile ':cache:1.1.8'
compile ":asset-pipeline:1.9.9"
// plugins needed at runtime but not for compilation
runtime ":hibernate4:4.3.6.1" // or ":hibernate:3.6.10.18"
runtime ":database-migration:1.4.0"
runtime ":jquery:1.11.1"
Run Code Online (Sandbox Code Playgroud) 我有一个命令对象,我想转换为域对象.
但是,我想将命令对象转换为的对象可能是两个域类之一(它们都是派生类),我需要在服务中执行它(根据其他数据,我决定哪个应该绑定的对象类型).这是可能的,这是最好的方法吗? bindData()仅存在于控制器中.
我是否只需手动将命令对象参数映射到适当的域对象属性?还是有更快/更好的方式?
我正在寻找一些关于开发Grails 3.0.1应用程序的良好工具组合的意见.我尝试过IntelliJ 14.1.3,但它仍然非常多,所以Grails 3.0.1支持尚未得到完全支持.
我正在开发Mac OS X 10.10.3.
使用命令行工具创建Grails应用程序没有问题,但找到与Grails 3.0.1兼容的良好IDE似乎并不那么容易.
我的问题:哪个IDE更适合Grails 3.0.1?
Grails"rendering"插件使用org.xhtmlrenderer.Grails本身与org.xhtmlrenderer一起打包:core-renderer:R8,显然来自依赖报告,使用的是grails-docs.
此版本的xhtmlrender中存在一个与twitter bootstrap冲突的错误,该错误仅在github存储库中修复.我已经构建了这个新版本,并通过maven成功安装了它,但是对于我的生活,我无法使用"渲染"插件来使用它.我甚至试图构建我自己的渲染插件版本,但这不起作用,并且根据依赖性报告"渲染"甚至不依赖于org.xhtmlrenderer:core-renderer:R8.
在BuildConfig.groovy中,我尝试过(在许多其他事情中):
inherits("global") {
// specify dependency exclusions here; for example, uncomment this to disable ehcache:
// excludes 'ehcache'
excludes 'core-renderer-M8', 'org.xhtmlrenderer', 'core-renderer'
}
Run Code Online (Sandbox Code Playgroud)
和
compile 'org.xhtmlrenderer:flying-saucer-core:9.0.1-custom'
runtime 'org.xhtmlrenderer:flying-saucer-core:9.0.1-custom'
Run Code Online (Sandbox Code Playgroud)
无济于事.
如何使用org.xhtmlrenderer的自定义构建"渲染"?是否构建本地版本的"呈现"插件并将我在项目BuildConfig.groovy中尝试的排除和依赖项信息添加到插件BuildConfig.groovy?
我有一项将任务分配给操作员的服务。在方法内部,我在循环内及时分配许多任务。我想刷新任务、操作员和 DistributionLog。如果我只需要保存一个域名,我想我可以做类似的事情
Operator.withTransaction{ //...some code }
Run Code Online (Sandbox Code Playgroud)
但我至少有 3 个域需要保存,更糟糕的是,其中两个域相互依赖。操作员有一个任务列表。
我迫不及待地等待所有分配完成,然后操作员才能获得他的任务,所以我必须强制它刷新。更难的是,这一切都在 multitenantService.doWithTenant() (多租户插件)中
我在ubuntu 14.04中意外升级了整个系统.
我正在尝试部署需要JDK7的war文件.
我尝试安装JDK7并将其用作默认值
root:floyd~# update-alternatives --config java
There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
Nothing to configure.
Run Code Online (Sandbox Code Playgroud)
但它也没有安装.尝试安装JDK 7时出现以下错误.
root@floyd:~# apt-get install openjdk-7-jdk
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package openjdk-7-jdk is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
N: Ignoring file '50unattended-upgrades.ucf-dist' in directory '/etc/apt/apt.conf.d/' as it has …Run Code Online (Sandbox Code Playgroud) grails ×9
grails-orm ×3
data-binding ×1
date ×1
flush ×1
groovy ×1
ide ×1
java ×1
java-7 ×1
java-8 ×1
resources ×1
transactions ×1
ubuntu ×1