小编Ada*_*zyk的帖子

如何在@select帮助器中允许默认值选择?

在我的表单中,我定义了一个下拉列表:

@select(
myForm("category_id"),
options(Category.options()),
'_label -> "Category",
'_default -> "-- Choose a Category --",
'_showConstraints -> false
)
Run Code Online (Sandbox Code Playgroud)

在我的控制器代码中:

Form<Category> catForm = form(Category.class).bindFromRequest();
if(catForm.hasErrors()) {
return badRequest(categoryEdit.render(catForm));
}
Run Code Online (Sandbox Code Playgroud)

表单提交不允许我选择默认值,如果我没有选择,catForm.hasErrors()为true.两个问题:

  1. 如何在下拉列表中选择默认值?

  2. 我想要默认值-1,在哪里设置它?(也许这就是问题所在,没有与-- Choose a Category --选项相关的价值?)

playframework playframework-2.0 scala-template

8
推荐指数
1
解决办法
6702
查看次数

条纹自定义金额字段

Stripe有一个新的非常简单的付费卡按钮.我想破解它,所以我可以通过自定义金额.

我有一个表格的div

 <div>
 <form>
 <select> 
 <option value"1000">$10</option>
 <option value:2000>$20</option>
 </select>
Run Code Online (Sandbox Code Playgroud)

或输入按钮

 <input id="amount" />
 <button id="buy">Buy Shirt</button>
 </form> 
 </div> 
Run Code Online (Sandbox Code Playgroud)

当用户点击购买衬衫按钮时,显示带有条带按钮的付款的div,并且上面选择的值被传递到数据量条带字段.输入中输入的金额必须乘以100,因为条带数据量必须以美分为单位

<div id='form' style="display:none">
<form action="" method="POST">
<script
src="https://checkout.stripe.com/v2/checkout.js" class="stripe-button"
data-key="pk_kgwan(blah blah)"
data-amount="2000"
data-name="Demo Site"
data-description="2 widgets ($20.00)"
data-image="/128x128.png">
</script>
</form>
</div>
Run Code Online (Sandbox Code Playgroud)

没有Stripes doc如何做到这一点.

javascript

8
推荐指数
1
解决办法
4926
查看次数

Cabal使用enable-shared标志重建所有内容

我在使用ghc构建共享库时遇到问题,我认为我需要使用--enable-shared重建我的haskell软件包,是否有一种简单的方法可以使用标志重新构建我的所有软件包--enable-shared ?

haskell ghc cabal haskell-platform

7
推荐指数
1
解决办法
2700
查看次数

使用Play Framework和Ebean进行复杂连接

我正在使用PlayFramework,我真的很喜欢它.当我想从表中获取数据时,例如我有一个user表,我使用以下语法:

List<User> users = User.find.where().eq("email", email).findList();
Run Code Online (Sandbox Code Playgroud)

我的问题是,当我得到用户对象时,我有一个id列.使用该id值,我可以映射到其他表,并且id这些表的's'可以映射到更多的表,因此跨多个表连接的基本概念.是否有任何示例或地方我可以阅读它描述如何使用上述语法实现它?

我试图找到自己而不能,只有这样我才能想到它是使用直接sql与准备好的语句,我宁愿不做.

java sql ebean playframework-2.0

7
推荐指数
1
解决办法
7333
查看次数

特定时间的日常通知

我想实现这个目标:

首次打开应用程序后,如果某些条件成立,用户每天下午2点都会收到通知.如果条件为假,我们今天不会显示通知.条件在下午2点检查,它从Internet下载一些数据.

到目前为止,我使用了AlarmManager及其方法setRepeating(),间隔为24小时.AlarmManager启动服务.在这个服务中,我正在下载数据,检查条件以及是否属实 - 显示通知.由于下载可以持续超过5秒,我已声明android:process=":background"此服务,在单独的进程中运行它而不阻止我的UI.

这种方法有两个缺点:


1:如果用户打开应用程序,请在下午4点说(条件为真),他将立即收到通知.从setRepeating()文档:

如果过去发生时间,将立即触发警报,警报计数取决于过去触发时间相对于重复间隔的距离.

我希望该用户今天不会收到通知,只会在第二天收到通知,依此类推.


2:我担心用户关闭手机后我的通知不会显示.从AlarmManager文档:

设备处于休眠状态时会保留已注册的警报(如果设备在此期间关闭,则可以选择将设备唤醒),但如果设备关闭并重新启动,则会清除设备.

我不知道是否有可能让它一直工作.


如果您有任何想法如何让它变得更好,欢迎您.

service notifications android alarmmanager

7
推荐指数
1
解决办法
4093
查看次数

修改现有字符串的最佳方法是什么?StringBuilder还是转换为char数组并返回字符串?

我正在学习Java,我想知道在这里修改字符串的最佳方法是什么(性能和学习Java中的首选方法).假设您循环遍历字符串并检查每个字符/对字符串中的索引执行某些操作.

我是否使用StringBuilder该类,或将字符串转换为char数组,进行修改,然后将char数组转换回字符串?

示例StringBuilder:

StringBuilder newString = new StringBuilder(oldString);
for (int i = 0; i < oldString.length() ; i++) {
    newString.setCharAt(i, 'X');    
}
Run Code Online (Sandbox Code Playgroud)

char数组转换的示例:

char[] newStringArray = oldString.toCharArray();
for (int i = 0; i < oldString.length() ; i++) {
    myNameChars[i] = 'X';    
}    
myString = String.valueOf(newStringArray);
Run Code Online (Sandbox Code Playgroud)

每种不同方式的优缺点是什么?

我认为这样StringBuilder会更有效率,因为每次更新索引时转换为char数组都会生成数组的副本.

java string

7
推荐指数
1
解决办法
4264
查看次数

查找数组中最常用的数字,内存有限

如何在数组中找到最常用的数字?阵列可能非常大,例如2GB,我们只有有限的内存,比如100MB.

我正在考虑外部排序,即排序和复制彼此相邻的数字.或者hashma.但不知道如何处理有限的内存.我甚至不确定外部排序是否是一个好主意.

arrays sorting algorithm

7
推荐指数
1
解决办法
1286
查看次数

查找数组中的第二个最小整数

在我们的赋值中,我们需要递归地在一个数组中找到第二个最小的整数.但是,为了更好地理解这个主题,我想首先(在本网站的帮助下)迭代地进行,并且我自己递归.

不幸的是,迭代地执行它是非常令人困惑的.我知道解决方案很简单,但我无法解决它.

以下是我的代码,到目前为止:

public static void main(String[] args) 
{
    int[] elements  = {0 , 2 , 10 , 3, -3 }; 
    int smallest = 0; 
    int secondSmallest = 0; 

    for (int i = 0; i < elements.length; i++)
    {
        for (int j = 0; j < elements.length; j++)
        {
            if (elements[i] < smallest)
            {
                smallest = elements[i];

                if (elements[j] < secondSmallest)
                {
                    secondSmallest = elements[j];
                }
            }
        }

    }

    System.out.println("The smallest element is: " + smallest + "\n"+  "The second …
Run Code Online (Sandbox Code Playgroud)

java arrays

7
推荐指数
1
解决办法
3万
查看次数

在O(log n)时间内,在给定范围内查找元素数量的数据结构是什么?

我正在解决一个问题,我意识到我需要一个具有以下属性的数据结构,但即使经过几个小时的谷歌搜索也无法找到.我相信STL库太丰富了,所以没有这个问题.

  1. 插入任何元素(应该能包含的repetetive的)的O(log(n))时候
  2. 同时删除元素O(log(n)).
  3. 如果我想查询范围[a,b]中的元素数量,我应该及时得到这个数量O(log(n)).

如果我是从头开始编写的,对于第1部分和第2部分,我会使用set或者multiset我会修改他们的find()方法(O(log(N))及时运行)来返回索引而不是迭代器,这样我就可以这样做了 abs(find(a)-find(b)),我得到了元素的数量在log(N)时间内.但不幸的是,对我来说,find()返回和迭代器.

我已经调查过multiset(),我无法及时完成要求3 O(log(n)).需要O(n).

有任何提示可以轻松完成吗?

c++ algorithm stl

7
推荐指数
1
解决办法
1143
查看次数

编译与翻译,"编译"Java到字节码?

我的理解是这样的,定义:

翻译 - 使用某种语言编写代码,使用其他语言生成代码.

Compilaton - 翻译成机器代码.

机器代码 - CPU的直接指令.

现在,来自docs.oracle.com:

javac - Java编程语言编译器

编译器...?我认为它是Java 转换器,因为它生成的代码不是机器代码.字节码需要解释器(JVM)才能运行,因此它定义为不是机器代码.

来自维基百科:

Java应用程序通常编译为字节码

同样.根据定义,我会说Java被转换为字节码.互联网上还有更多的例子,我认为存在混淆,或者我只是遗漏了一些东西.

你能澄清一下吗? 翻译和编译有什么区别?

java compiler-theory compilation

6
推荐指数
2
解决办法
3413
查看次数