小编rot*_*rcz的帖子

如何使用Laravel 4.2在单个查询中进行批量插入或更新(而不是for循环查询)

$cardQueryList = [];
foreach($cards as $cardName => $quantity) {
    $cardQueryList[] = [
        'username' => $user->username,
        'card_uid' => $card->uid,
        'have_quantity' => $quantity
    ];
}

Collection::insert($cardQueryList);
Run Code Online (Sandbox Code Playgroud)

即使行存在,上面的代码也会创建新行.如果行存在,我该怎么做才会更新.如果没有它会创建行?一个雄辩或流利的答案将是最佳的,但如果没有别的办法,我会对原始开放.

我想用单个查询进行批量更新/插入.不是每个记录的for循环查询.理想情况下,出于显而易见的原因,我想打一次数据库.

我也已经检查了以下链接:

如果不存在则插入新记录,如果存在则更新,laravel eloquent

以上工作适用于单个记录更新/插入.如果我使用for循环运行会非常慢.我正在寻找一个允许在单个查询中进行批量插入/更新的答案.

注意:我正在使用'username'和'card_uid'作为我的密钥.所以基本上当我找到一个带有所述用户名和card_uid的行时,我想更新相应的行.否则创建一个新行.

php mysql fluent laravel eloquent

14
推荐指数
2
解决办法
1729
查看次数

C#移动列表中的一部分项目

我发现这比我想象的要困难得多.如何在列表中移动一部分项目?

例如,如果我有以下列表:

List<int> myList = new List<int>();
for(int i=0; i<10; i++) {
    myList.Add(i);
}
Run Code Online (Sandbox Code Playgroud)

此列表将包含{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }.

如何移动List的各个部分?说我想转移{ 7, 8, 9 }到第四个索引,使其成为:

{ 0, 1, 2, 3, 7, 8, 9, 4, 5, 6 }
Run Code Online (Sandbox Code Playgroud)

或者说,我想移动{ 1, 2 }{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }的第八指数,使其:

{ 0, 3, 4, 5, 6, 7, 1, 2, 8, 9 }
Run Code Online (Sandbox Code Playgroud)

谁能提供一些代码?像下面这样需要3个值的东西会很棒.

MoveSection(insertionPoint, …
Run Code Online (Sandbox Code Playgroud)

c# list

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

如何比较2个字符串数组并查找所有连续匹配并保存索引?

例如,如果我有以下2个数组:

string[] userSelect = new string[] {"the", "quick", "brown", "dog", "jumps", "over"};
string[] original = new string[] {"the", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog"};
Run Code Online (Sandbox Code Playgroud)

我正在尝试将userSelect数组与原始数组进行比较,并根据索引获取所有连续匹配.userSelect数组将始终由原始数组中的字符串组成.所以输出如下:

int[] match0 = new int[] {0, 1, 2}; // indices for "the quick brown"
int[] match2 = new int[] {4, 5}; // indices for "jumps over"
int[] match1 = new int[] {3}; // index for "dog"
Run Code Online (Sandbox Code Playgroud)

userSelect数组长度永远不会超过原始数组长度,但它可以更短,并且单词可以按任何顺序排列.我该怎么做呢?

c# arrays

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

这是ActionScript 3中MVC的正确实现吗?

所有程序都是单击一个按钮,它会告诉您在文本字段中单击按钮的次数.

文档类:这是代码的入口点.

package {
    import flash.display.MovieClip;

    /**
     * MVCTest.as
     * @author rotaercz
     */
    public class MVCTest extends MovieClip {
        private var _model:Model;
        private var _view:View;
        private var _control:Control;

        public function MVCTest() {
            _model = new Model();
            _view = new View(this);
            _control = new Control(_model, _view);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

型号类:基本型号代码.

package {

    /**
     * Model.as
     * @author rotaercz
     */
    public class Model {
        private var _totalClicks:int;

        public function AddClick():void {
            _totalClicks++;
        }

        public function get Clicks():int {
            return _totalClicks;
        }

        public …
Run Code Online (Sandbox Code Playgroud)

model-view-controller actionscript actionscript-3

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

使用C#NHunspell如何检查单词?

使用C#NHunspell,如何检查单词是否拼写正确,如果不正确拼写是什么?

我已将NHunspell.dll导入到项目中.并查看了文档.

但是在阅读文档方面有点新意,很难知道从哪里开始.有人可以举例说明如何拼写单词拼写正确吗?基本上我需要一个NHunspell的Helloworld.

c# spell-checking hunspell nhunspell

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

在 Eloquent ORM 中使用 find 选择特定列

在 Laravel 中,如何使用 find 获取特定列?我知道你可以像这样得到它:

$user = User::where('u_id', '=', 1)
        ->get(['firstname', 'lastname']);
Run Code Online (Sandbox Code Playgroud)

有没有办法用 find 做到这一点?这是我目前拥有的:

$user = User::find(1);
Run Code Online (Sandbox Code Playgroud)

php mysql laravel eloquent

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

在Laravel Eloquent中,限制vs采取的区别是什么?

在文档中,它显示以下内容:

要限制查询返回的结果数,或跳过查询中给定数量的结果,可以使用skip和take方法:

$users = DB::table('users')->skip(10)->take(5)->get();
Run Code Online (Sandbox Code Playgroud)

或者,您可以使用限制和偏移方法:

$users = DB::table('users')
            ->offset(10)
            ->limit(5)
            ->get();
Run Code Online (Sandbox Code Playgroud)

这两者有什么不同?执行速度有什么不同吗?

php laravel eloquent

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

你怎么知道主要的发布活动是什么?

新问题.你怎么知道主要的发布活动是什么?学习Android.

android android-manifest

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

如何优化if else if语句,其中前一个ifs不在循环中使用?

这是假设的代码,假设我有以下内容:

假设我有一个数组,它在这个示例问题中有很多数据,整数,但是它可以在if语句方面以某种方式对任何类型的数据进行排序.

$a = array(0,0,0,1,1,1,1,1,1,2,2,2,2,3,3,...,9,9,9);
Run Code Online (Sandbox Code Playgroud)

假设我有一个带有许多if else if语句的for循环,那些可以有任何做某事的标准.

for($i=0; i<count($a); i++) {
    // these if statements can be anything and may or may not be related with $a
    if($a[$i] == 0 && $i < 10) { 
        // do something
    }
    else if($a[$i] == 1 && $i < 20) {
        // do something
    }
    else if($a[$i] == 2) {
        // do something
    }
    else if($a[$i] == 3) {
        // do something
    }

    // and so on
}
Run Code Online (Sandbox Code Playgroud)

现在问题是,在第一次if语句迭代完成之后,它从未被使用过.一旦for循环开始使用下一个if语句,就不需要再次评估前面的if语句.它可以使用第一个if语句n次,依此类推.

有没有办法优化它,所以它不必通过所有以前的if else if语句,因为它循环数据?记住,数据可以是任何东西,if语句可以是各种条件. …

php

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

运行 Nightwatch 时如何增加内存使用量

运行 Nightwatch 测试时,我通常只是这样运行:

nightwatch --test tests/file.js
Run Code Online (Sandbox Code Playgroud)

我目前收到如下错误:

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - Javascript heap out of memory
    1: node_module_register
    2: v8::internal::FatalProcessOutOfMemory
    3: v8::internal::FatalProcessOutOfMemory
    4: v8::internal::Factory::NewRawTwoByteString
    5: v8::internal::AsmJsScanner::IsNumberStart
    6: 0000028B313843C1
Run Code Online (Sandbox Code Playgroud)

我正在查找修复程序,在这种情况下节点似乎需要更多内存。

我尝试了以下方法,但没有成功。

node --max_old_space_size=8192 nightwatch --test tests/file.js
Run Code Online (Sandbox Code Playgroud)

我应该如何重写上面的行才能使其工作?

编辑:

我也尝试过:

npm install -g increase-memory-limit
increase-memory-limit
Run Code Online (Sandbox Code Playgroud)

并尝试通过添加以下内容来更新 package.json:

"scripts": {
    "fix-memory-limit": "cross-env LIMIT=2048 increase-memory-limit"
},

"devDependencies": {
    "increase-memory-limit": "^1.0.3",
    "cross-env": "^5.0.5"
}
Run Code Online (Sandbox Code Playgroud)

node.js nightwatch.js

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