小编JSS*_*JSS的帖子

Moment.js一周的第一天不正确

我第一次和Moment.js合作.我试图找回一周中第一天的日期,而在欧洲,这通常是星期一.无论我做什么,我都会在周日的第一天得到周日.

我尝试设置不同的语言(本地或全球),但无济于事.我使用了moment.js github页面中的langs.min.js文件."en-gb"和"fr"的语言文件包含以下代码行:

dow : 1, // Monday is the first day of the week.
Run Code Online (Sandbox Code Playgroud)

所以当我要求一周的第一天正确时,我会得到星期一的日期吗?我一直把周日作为输出.

// Create moment object
var localLang = moment();

// Set language to french
localLang.lang('fr');

// Test language
localLang.lang(); // Output: fr

// Retrieve first day of the week and format it
var dow = localLang.startOf('week').format('dddd DD-MM-YYYY'); // Output: dimanche 14-04-2013
Run Code Online (Sandbox Code Playgroud)

Dimanche是星期日的法语.如你所见,moment.js可以成功使用语言文件但不使用星期几配置

JS调用moment.js和langs.js来测试: JSFiddle

编辑:我可以得到周一而不是周日的日期而day(1)不是startOf('week').但是使用day(0)我仍然得到星期天的结果.为什么不是星期一的第一天,如语言文件中所配置的那样.

momentjs

17
推荐指数
2
解决办法
2万
查看次数

将Play Framework 2.6与gRPC和Netty集成

在我写这篇文章的时候,Play Framework的版本是v2.6.0-M4.由于Netty冲突,框架的v2.5版本难以使用gRPC(请参阅此stackoverflow答案).

我开始研究gRPC和protobufs.已经从Play Framework 2.5> 2.6.0-M4移植了一个项目,以期实际发布.目前我对gRPC的整合有一些疑问.我想知道如何让gRPC服务器与Play Framework很好地协同工作.我知道v2.6切换到Akka HTTP服务器而不是Netty,而我grpc-netty在sbt中使用依赖,所以也许我必须再次将项目切换到Netty(这里是如何).

出于测试目的,我创建了一个快速而脏的GrpcServer.scala类,它启动了一个带有GrpcServer监听的线程.我设法用gRPC 添加ScalaPB并生成/编译我的protobufs.它非常适合与小型测试NodeJS应用程序通信,但我必须独立于主项目启动此服务器应用程序:

private def start(): Unit = {
    server = ServerBuilder.forPort(GrpcServer.port).addService(GreeterGrpc.bindService(new GreeterImpl, executionContext)).build.start
    GrpcServer.logger.info("Server started, listening on " + GrpcServer.port)
    sys.addShutdownHook {
        System.err.println("*** shutting down gRPC server")
        self.stop()
        System.err.println("*** server shut down")
    }
}
Run Code Online (Sandbox Code Playgroud)

在Play Framework中集成gRPC的可能解决方案

现在,对于Play Framework v2.6中的真正集成,我正在寻找建议.这是我可以做的一些事情:

  • 在Play Framework启动时创建一个模块并启动gRPC服务器,如此stackoverflow答案中所述.这意味着我们在现有服务器旁边的不同端口上运行gRPC服务器(来自Play Framework 2.6的Akka HTTP服务器)
  • 创建Scala命令并使其长时间运行.因此,当我们在服务器上启动应用程序时,我们始终确保启动运行gRPC服务器的命令.
  • 在Play Framework v2.6中从Akka HTTP切换到Netty,并将gRPC与现有的Netty服务器紧密集成,以便挂钩到现有的Netty服务器,而不是自己创建服务器.我想要这个解决方案,但不知道如何处理它.它肯定会避免运行两个单独的http堆栈.

有关清洁集成的任何提示/想法都很有帮助,因为除了以前的2.5版本中存在问题之外,没有太多关于Play Framework和gRPC的信息.

scala netty playframework grpc scalapb

10
推荐指数
0
解决办法
862
查看次数

使用选择表单类型的数组到字符串转换错误

我正在做的事情:

我有一个数据库,其中包含表"团队"和属性"工作日".我生成了我的学说实体,现在我正在构建一个Symfony2表单.

我想将工作日的数组保存到团队表中的工作日属性中.weekdays属性是VARCHAR(255),因此它应该能够包含字符串数组.我使用选择类型,但在提交表单时我得到一个数组到字符串转换错误.

我在做什么:

我使用了Symfony2选择formtype(带有多个选项),因为团队可以在工作日选择几个工作日.我首先检索了我的团队对象数据.然后我做这样的表格:

$builder = $this->createFormBuilder($team);
$form = $builder->add('weekday', 'choice', array(
        'choices' => array(
            'mon'    => 'Monday',
            'tue'    => 'Tuesday',
            'wed'    => 'Wednesday',
            'thu'    => 'Thursday',
            'fri'    => 'Friday',
            'sat'    => 'Saturday',
            'sun'    => 'Sunday',
            ),
        'multiple' => true,
        'expanded' => true,
        'label' => 'Day of the week',
        'label_attr' => array('class' => 'control-label'),
        'attr' => array('placeholder' => 'Day of the week', 'size' => '7')
        ))->getForm();
Run Code Online (Sandbox Code Playgroud)

提交表单时,我使用实体管理器将更改保存到数据库:

if ($request->isMethod('POST')) {
    $form->bind($request);

    if ($form->isValid()) {

        // Save changes …
Run Code Online (Sandbox Code Playgroud)

php doctrine symfony

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

与Bourbon Neat相比,外部容器尺寸不同

我正在学习使用Bourbon Neat,我总是使用Bootstrap的网格系统.我正在尝试重新创建这个Bootstrap网格页面来学习Bourbon Neat的基础知识.

我使用的设置是:

// Bourbon Neat Grid Settings
$column: 70px;
$gutter: 30px;
$grid-columns: 12;
$max-width: em(1170);
$visual-grid: true;
Run Code Online (Sandbox Code Playgroud)

我确定了我的断点并使用新的断点函数设置它们,我也可以在其中更改列数.

但我想改变的是容器大小.在Bootstrap中,容器的最大宽度如下所示:

@media> 1200px: max-width:1170px;

@media> 992px: max-width 970px;

@media> 768px: max-width:750px;

但是,在Bourbon Neat中,最大宽度用变量设置一次.我目前已将它设置为max-width: em(1170);如何让这个容器尺寸变化?如何使用Bourbon Neat而不是Bootstrap 3实现相同的示例页面?我知道在Susy你可以设置容器宽度

neat bourbon

5
推荐指数
2
解决办法
7134
查看次数

使用Entity Framework从关联中获取ID

我将这个小应用程序作为练习来构建实体框架的基础知识.它使用带有3个表的MySQL数据库:课程,学生和Students_has_Courses: DB Schema

我使用此db在Visual Studio中创建实体模型: VS Schema

它工作正常.我可以用我的datagridview绑定一个表,修改数据并按一个按钮来保存更改.但正如您所看到的,Students_has_Courses是一个关联(这对我来说很新).现在我的问题是:我需要指定学生证的每个课程ID(了解学生正在参加哪些课程).我认为这个LINQ查询没问题:

var query = from s in school.Students.AsEnumerable()
            where s.ID == selectedStudentId
            select s.Courses;
Run Code Online (Sandbox Code Playgroud)

但我似乎无法从这个EntityCollection中提取课程ID?我用了一个,foreach(var course in query)但我真的被困在这里了.

c# linq entity-framework associations

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

在所有 1000 个 postgres 数据库和架构上创建只读用户

我正在尝试使用Vault在 Postgres 11.8 实例中创建按需临时只读用户。

我会有:

  • 1000 多个数据库(每个客户也称为租户一个)
  • 每个数据库都有一个publicreporting模式。

因此,我试图找到一种方法来授予此只读用户对每个数据库以及两个模式中所有表的访问权限。

当我想出以下片段时:

-- Create a new user
CREATE ROLE "my-readonly-user" WITH LOGIN PASSWORD 'test123';

-- Grant access to the two schema's we have
GRANT USAGE ON SCHEMA public TO "my-readonly-user";
GRANT USAGE ON SCHEMA reporting TO "my-readonly-user";

-- Grant access to all tables in our two schema's
GRANT SELECT ON ALL TABLES IN SCHEMA public TO "my-readonly-user";
GRANT SELECT ON ALL TABLES IN SCHEMA reporting …
Run Code Online (Sandbox Code Playgroud)

postgresql sql-grant

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