小编Joh*_*n S的帖子

Rails与对象数组的强参数

当使用rails 4.0强参数时,如何允许这样的json?

{
   "user":
   {
       "first_name":"Jello"
   },
   "users_to_employer":[
       {
           "start_date":"2013-09-03T16:45:27+02:00",
           "end_date":"2013-09-10T16:45:27+02:00",
           "employer":{"company_name":"Telenor"}
       },
       {
           "start_date":"2013-09-17T16:45:27+02:00",
           "end_date":null,
           "employer":{"company_name":"Erixon"}
       }
   ]
}
Run Code Online (Sandbox Code Playgroud)

我尝试了以下内容:

 params.require(:users_to_employers => []).permit(
                                                 :start_date, 
                                                 :end_date => nil,
                                                 :employer => [
                                                     :company_name
                                                 ])
Run Code Online (Sandbox Code Playgroud)

但它没有用.

ruby ruby-on-rails strong-parameters

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

节点aws-sdk s3文件上传大小

当为nods.js使用aws-sdk npm插件时,我可以使用以下代码(到AWS s3)上传50kb的pdf:

var params = {
            Bucket: BUCKET, 
            Key: pdf_key, 
            Body: file,
            ContentType: 'application/pdf'
        };
        var s3 = new AWS.S3();

        s3.putObject(params, function(error, data) {
            console.log(data);
            console.log(error);
            if (error) {
                console.log(error);
                callback(error, null);
            } else {
                callback(null, pdf_key);
            }
        });
Run Code Online (Sandbox Code Playgroud)

但是当上传一个11mb pdf时,即使指定了ContentLength,即使超时为2分钟,上传也会永远持续下去.

问题是如何让aws s3接受大型pdf文件?

UPDATE

我还没有找到任何关于这个问题的文档或文章.

更新2

我将接受答案,这些答案显示了这个或另一个可以做到这一点的框架.我将需要该框架,以便能够允许对象的auth读取.

更新3 我现在让它工作,但我没有找到它不应该工作的原因.

提前致谢!

amazon-s3 node.js aws-sdk

6
推荐指数
1
解决办法
3322
查看次数

C# - 将异步任务从一种类型转换为另一种类型

我习惯使用Scala编程语言 - 使用Scala我可以映射未​​来,例如:

val response: Future[HttpResponse] = asyncHttpClient.GetRequest("www.google.com")

val statusCode: Future[Int] = response.map(r => r.statusCode)
Run Code Online (Sandbox Code Playgroud)

最近我接受了使用C#的工作,我发现自己与上面的例子情况相同,但我无法弄清楚如何"映射"任务.

这是我想要实现的一个例子:

Task<HttpResponseMessage> response = httpClient.GetAsync("www.google.com")

Task<int> statusCode = response.Map(response => response.StatusCode)
Run Code Online (Sandbox Code Playgroud)

谢谢

c# asynchronous

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

Scala在同一行声明多个变量,第一个字符为大写

我试图通过元组赋值声明变量,例如:

val (hi, bye) = ("hi", "bye")
Run Code Online (Sandbox Code Playgroud)

显然这很好.但是,当第一个字符为大写时,编译器会爆炸并抱怨这些变量尚未定义.

val (Hi, Bye) = ("hi", "bye")
Run Code Online (Sandbox Code Playgroud)

为什么这不起作用?我正在运行Scala 2.11.

顺便说一句(正如预期的那样):

val Hi = "hi"
val Bye = "bye"
Run Code Online (Sandbox Code Playgroud)

scala compiler-errors

4
推荐指数
1
解决办法
115
查看次数

Sencha Touch在导航视图中自定义导航栏

我正在做一个简单的应用程序,它有一个包含列表的导航视图,当你按下列表我想显示一些HTML或其他东西,但是一个"新"窗口,所以我可以利用导航栏上的后退按钮.

我现在的问题是我需要在导航栏上有一个搜索字段,对于初始显示,问题是我不明白如何修改导航栏以便它获得搜索栏.这是我的代码:

Ext.define('AppName.view.MainNav', {
extend: 'Ext.navigation.View',

xtype: 'mainnav',

requires: [
    'Ext.field.Search', 'Ext.TitleBar'
],

config: {
    fullscreen: true,
    items: [
        {
        navigationBar: {
            xtype: 'titlebar',
            items: [
                { xtype: 'spacer' },
                {
                    xtype: 'searchfield',
                    placeHolder: 'Search...',

                    }
                },
                { xtype: 'spacer' }
            ]
        },

        xtype: 'list',
        fullscreen: true,

        store: {
            fields: ['name', 'number'],
            sorters: 'name',
            data: [
                {name: 'bla', number: 0},
                {name: 'blo', number: 1},
                {name: 'bliblo', number: 2},
                {name: 'Bliblablo', number: 3},
                {name: 'bliboasdas', number: 4},
            ]
        },

        itemTpl: '{name}' …
Run Code Online (Sandbox Code Playgroud)

javascript html5 navigationbar sencha-touch

2
推荐指数
1
解决办法
8555
查看次数

Spark AccumulatorParam通用参数

我在Spark中使用累加器有问题.如Spark网站所示,如果您想要自定义累加器,您可以简单地扩展(使用对象)AccumulatorParam特征.问题是我想但不能使该对象具有通用性,例如:

object SeqAccumulatorParam[B] extends AccumulatorParam[Seq[B]] {

    override def zero(initialValue: Seq[B]): Seq[B] = Seq[B]()

    override def addInPlace(s1: Seq[B], s2: Seq[B]): Seq[B] = s1 ++ s2

}
Run Code Online (Sandbox Code Playgroud)

但这给了我一个编译错误,因为对象不能使用泛型参数.我的情况并没有真正允许我SeqAccumulatorParam为每个给定的类型定义一个,因为这会导致很多丑陋的代码重复.

我有一个替代方法,只是将所有结果放在一个RDD,然后用一个累加器迭代它们,为那个单一类型定义,但这会更好.

我的问题是:有没有其他方法来创建累加器?

generics scala apache-spark

2
推荐指数
1
解决办法
1292
查看次数

GWT客户端umbrellaexception在java中获取完整的错误消息

我目前正在使用GWT,但我发现几乎不可能在Chrome控制台中找到当前错误消息的错误.在本地开发模式和我在GAE上托管应用程序时,我都会收到错误.我如何得到实际的java错误?它说哪条线和我得到的例外?顺便说一句,我正在寻找的错误是什么?

提前致谢!

debugging gwt google-app-engine client

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

NGINX 使用 angular hash-tag 语法将 HTTP 重定向到 HTTPS

我有一个我只想在 HTTPS 中运行的服务器。我在 Amazon AMI 上运行 Node 和 Nginx。

要重定向到 HTTPS,我只需将其放在我的 nginx.conf 文件中:

server {
    listen 80;
    server_name my_server;
    return         301 https://$server_name$request_uri;
}
Run Code Online (Sandbox Code Playgroud)

然后配置 SSL。但是,当诸如此类的 Angular urlhttp://www.mypage.com/#/whatever进来时,所产生的重定向https://www.mypage.com/没有重要的 Angular 语法。

如何使它适用于 Angular 哈希标签语法?Nginx 版本是 1.6.2。

谢谢

amazon nginx angularjs

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

字节上的Scala按位运算符

我试图在Scala中的字节上做一些按位运算符,我得到了一些奇怪的编译错误:

scala> var a: Byte = 5 | 3
a: Byte = 7

scala> a |= 7
<console>:9: error: type mismatch;
 found   : Int
 required: Byte
              a |= 7
                ^

scala> a |= 7.toByte
<console>:9: error: type mismatch;
 found   : Int
 required: Byte
              a |= 7.toByte
                ^
Run Code Online (Sandbox Code Playgroud)

所以基本上我正在尝试创建一个var a: Byte = <something>,然后在执行按位运算符并且等于这个可重新分配的字节时它不起作用,我已将它报告为一个错误,但我错过了什么?有什么理由不起作用吗?

scala bitwise-operators

0
推荐指数
1
解决办法
967
查看次数

Haskell - 如何处理依赖于变量的多行输入

我正在尝试解决Haskell中的竞争性编程挑战问题.

这是我的代码:

module Main (main) where

import System.IO
import Text.Printf

getInt :: IO Int
getInt = readLn

getDouble :: IO Double
getDouble = readLn

getCoordinate :: (IO Double, IO Double, IO Double)
getCoordinate = (getDouble, getDouble, getDouble)

readCoordinates :: Int -> [(IO Double, IO Double, IO Double)] -> [(IO Double, IO Double, IO Double)]
readCoordinates 0 list = list
readCoordinates a list = readCoordinates (a - 1) list ++ [getCoordinate]

main :: IO ()
main = do
  limit <- getInt …
Run Code Online (Sandbox Code Playgroud)

io haskell

0
推荐指数
1
解决办法
254
查看次数