小编Toa*_*gma的帖子

是断言邪恶?

Go语言的创造者写的:

Go不提供断言.它们无疑是方便的,但我们的经验是程序员将它们用作拐杖以避免考虑正确的错误处理和报告.正确的错误处理意味着服务器在非致命错误而不是崩溃后继续运行.正确的错误报告意味着错误是直接的,并且可以避免程序员解释大的崩溃跟踪.当程序员看到错误时不熟悉代码时,精确错误尤为重要.

你对此有何看法?

c c++ error-handling assert go

195
推荐指数
11
解决办法
3万
查看次数

如何使用Scala进行instanceof检查(测试)

我正在尝试将ScalaTest合并到我的Java项目中; 用ScalaTests替换所有JUnit测试.有一次,我想检查Guice的Injector是否注入了正确的类型.在Java中,我有一个这样的测试:

public class InjectorBehaviour {
    @Test
    public void shouldInjectCorrectTypes() {
        Injector injector = Guice.createInjector(new ModuleImpl());
        House house = injector.getInstance(House.class);

        assertTrue(house.door() instanceof WoodenDoor);
        assertTrue(house.window() instanceof BambooWindow);
        assertTrue(house.roof() instanceof SlateRoof);
    }
}
Run Code Online (Sandbox Code Playgroud)

但是我在使用ScalaTest时遇到了同样的问题:

class InjectorSpec extends Spec {
    describe("An injector") {
        it("should inject the correct types") {
            val injector = Guice.createInjector(new ModuleImpl)
            val house = injector.getInstance(classOf[House])

            assert(house.door instanceof WoodenDoor)
            assert(house.window instanceof BambooWindow)
            assert(house.roof instanceof SlateRoof)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

它抱怨说,价值instanceof是不是成员Door/ Window/ Roof.我不能instanceof在Scala中使用这种方式吗?

java junit scala scalatest

92
推荐指数
4
解决办法
6万
查看次数

C#中的数组大小(长度)

如何在C#中确定数组的大小(项目的长度/数量)?

c# arrays size

85
推荐指数
6
解决办法
24万
查看次数

如何使用SimplePagination jquery

我想在我的代码上使用simplePagination.(我正在使用MVC4 C#开发)

假设我有这堆代码

<table>
    <thead>
        <tr>
            <td><input type="checkbox" name="select-all" id="select-all" /></td>
            <td style="text-align: left">Name</td>
            <td style="text-align: left">Created By</td>
            <td style="text-align: left">Created Date</td>
        </tr>
    </thead>
    <tbody>
        <tr class="post">
            <td><p><input Length="0" name="314" type="checkbox" value="true" /><input name="314" type="hidden" value="false" /></p></td>
            <td>Window</td>
            <td>John</td>
            <td>01/01/2014 12:00:00 AM</td>
        </tr>
        <tr class="post">
            <td><p><input Length="0" name="314" type="checkbox" value="true" /><input name="314" type="hidden" value="false" /></p></td>
            <td>Door</td>
            <td>Chris</td>
            <td>01/01/2014 12:00:00 AM</td>
        </tr>
        <tr class="post">
            <td><p><input Length="0" name="314" type="checkbox" value="true" /><input name="314" type="hidden" value="false" /></p></td>
            <td>Floor</td>
            <td>Michael</td>
            <td>01/01/2014 12:00:00 AM</td> …
Run Code Online (Sandbox Code Playgroud)

html javascript jquery jquery-pagination

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

Krajee Bootstrap文件输入,捕获AJAX成功响应

我正在使用Krajee的Bootstrap文件输入插件通过AJAX调用执行上传.

这里是Krajee插件AJAX部分的链接:Krajee插件AJAX

我正在使用的JS和PHP(codeigniter)代码如下:

JS:

<script>        
    $("#file-upload").fileinput({ 
        'allowedFileExtensions' : ['csv'],
        'maxFileSize': 5120,
        'maxFileCount': 1,
        'uploadUrl': 'dashboard/uploader',
        'elErrorContainer': '#errorBlock',
        'uploadAsync': true,
        'msgInvalidFileExtension': 'Invalid extension for file "{name}". Only "{extensions}" files are supported.',
        'uploadExtraData': {csrf_token_name: $("input[name=csrf_token_name]").val()}
    });       
</script>
Run Code Online (Sandbox Code Playgroud)

PHP:

public function uploader(){
    $config['upload_path'] = './csv_uploads/';
    $config['allowed_types'] = 'csv';
    $config['max_size'] = '5120';

    $this->upload->initialize($config);
    if (!$this->upload->do_upload("file-upload")){
        $data['error'] = 'The following error occured : '.$this->upload->display_errors().'Click on "Remove" and try again!';
        echo json_encode($data); 
    } else {
        echo json_encode("success"); 
    }            
}
Run Code Online (Sandbox Code Playgroud)

现在我收到来自PHP的响应无论是错误还是成功作为JSON,我已经浏览了插件文档,我仍然无法找到如何捕获AJAX响应并按照我们在jQuery中的响应行事使用ajax成功函数:

success: function (response) {
            //Deal …
Run Code Online (Sandbox Code Playgroud)

javascript php ajax jquery twitter-bootstrap

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

如何使用android中的Room Persistence ORM工具实现created_at和updated_at列

如何使用Android中的工具实现created_atupdated_atRoom Persistence ORM,可以在创建或更新表中的行时自动更新时间戳?

java orm android sql-timestamp android-room

9
推荐指数
2
解决办法
3514
查看次数

GraphQL 缺少名称

刚刚使用 node 和 c# 学习 GraphQL。我正在尝试将 C# 示例移植到 node 上,因为这将是一个很好的学习练习(因为我不太了解 node 或 graphql)

我有 2 种类型。Account and Owner(即帐户所有者)

一切正常(即拥有帐户(列表)和第一个帐户(单个对象)的字段)

module.exports = new GraphQLObjectType({
    name: 'OwnerType',
    fields: {
        Id: { type: GraphQLID},
        Name: {type: GraphQLString},
        Address: {type: GraphQLString},
        OwnedAccounts: {
            type: new GraphQLList(AccountType),
            name: "OwnedAccounts",
            resolve(obj, args, { mssqlConfig }){
                return mssql_account(mssqlConfig).getByOwnerId(obj.Id);
            }
        },
        FirstAccount: {
            type: AccountType,
            name: "FirstAccount",
            resolve(obj, args, {mssqlConfig}){
                 return mssql_account(mssqlConfig).getFirstByOwnerId(obj.Id);
            }
        }
    }
}); 
Run Code Online (Sandbox Code Playgroud)

当我尝试将 AccountOwner 的字段添加到 AccountType 时,就会出现问题。我收到错误消息“提供的用于构建架构的类型之一缺少名称。”

我试过给我能看到的所有东西都起个名字,但没有任何帮助。

有问题的 AccountType 定义是:

javascript node.js graphql

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

Contenteditable:如何在按del或退格时完全删除跨度

我有一个contenteditable div,如下面的HTML所示(插入标记为|).

我想span.label在按下时删除backspacedelete(即跨度作为单个字母,因此对于用户来说,它看起来好像Name在一个单键中被删除)

<div contenteditable="true">
   Hallo, <span class="label">Name</span>|,
   this is a demonstration of placeholders!
   Sincerly, your
   <span class="label">Author</span>
</div>
Run Code Online (Sandbox Code Playgroud)

html javascript range selection

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

Laravel 框架中的拆分字符串

如何在 Laravel 框架中拆分字符串并将其显示在表格中?我从我的数据库中获取数据,该数据包含一列但在一个字符串中,例如{ 1234, normal, r4r3r2 }. 我想用逗号将它分成三个不同的部分/值,并将其显示在一个三列的表格中。

目前,我只能显示数据而不拆分它们。

我的家庭控制器:

public function index()
  {
    $test = Test::all();
    return view('home')->with('test', $test);
  }
Run Code Online (Sandbox Code Playgroud)

我的 home.blade.php:

<ol>
   @foreach($test as $row)
     <li>{{ $row->data }}</li>
   @endforeach
</ol>
Run Code Online (Sandbox Code Playgroud)

php database split laravel

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

python SSL证书验证在某些分发命令上失败

我正在尝试通过以下方式将 Python 文件上传到 PyPi,twine upload <file>但出现 SSL 错误:

C:\pypubsub>twine upload dist\PyPubSub-4.0.0rc1-py3-none-any.whl
Uploading distributions to https://upload.pypi.org/legacy/
Uploading PyPubSub-4.0.0rc1-py3-none-any.whl
SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:645)
Run Code Online (Sandbox Code Playgroud)

其他使用 SSL 的 Python 脚本也有同样的问题,例如

  • python setup.py bdist_wheel upload <my_package>
  • pip install <any_package>; 但在那里我可以添加--trusted-host pypi.python.org到任何pip install命令,并且依赖项的安装和下载将成功

无论是在家里还是在工作场所,这都会发生在我的公司笔记本电脑上,但不会发生在我的个人笔记本电脑上。

为了解决这个问题,我基本上尝试了对类似问题的 SO 答案(即导出 twine 试图验证的证书——大概是 pypi.python.org 的证书——然后告诉 twine 使用它):

  1. 从 chrome,我转到https://pypi.pythong.org,单击 URL 旁边的锁,然后单击“详细信息”、“查看证书”、“详细信息”、“复制到文件”。这生成了一个 .CER 文件。
  2. 我使用SSL Converter将 .CER 文件从 DER 格式转换为 PEM 格式。这创建了一个 .CRT …

python certificate windows-firewall twine

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