在PostgreSQL中将数组展开成行的最快方法是什么?即
我们有:
a
-
{1,2}
{2,3,4}
Run Code Online (Sandbox Code Playgroud)
我们需要:
b
-
1
2
2
3
4
Run Code Online (Sandbox Code Playgroud)
我用的是:
select explode_array(a) as a from a_table;
Run Code Online (Sandbox Code Playgroud)
explode_array在哪里:
create or replace function explode_array(in_array anyarray) returns setof anyelement as
$$
select ($1)[s] from generate_series(1,array_upper($1, 1)) as s;
$$
Run Code Online (Sandbox Code Playgroud)
有更好的方法吗?
我一直在寻找关于这种语法的一些明确的文档.它用于创建自定义过滤器以选择DOM中的特定元素.Benjamin Arthur Lupton在ajaxify-html5.js要点中有一个很好的例子(参见第45行定义函数和使用它的第78行),他提供了如何使用他的历史来ajaxify一个网站插件.
Shane Riley还有一个相当广泛的博客叫做添加过滤器表达式,但我已经浏览了jQuery文档,但我找不到任何文档.
如果你能,我将不胜感激
expr功能的官方文档我看过jQuery.filter但是在他的ajaxify脚本中找不到Lupton技术的替代品.
我渴望使用最近的jQuery.我正在使用v 1.8.2,并且很快就会升级到1.9.x.
当我点击时,我仍然可以看到我的Git存储库:
Team > Git > Repository Browser
Run Code Online (Sandbox Code Playgroud)
即使我已从项目的文件中删除.git文件夹.
我试图断开/重新连接,仍然是相同的.
我想捕获一个错误,纠正它并继续执行程序. http://jsfiddle.net/Gthv9/12/
但是,我不能这样做!
如果你点击:"重新检查模型1","重新检查模型3" - 没关系.
如果单击:"重新检查模型1","重新检查模型2","重新检查模型3" - 出现错误.
Uncaught Error: Unable to parse bindings.
Message: ReferenceError: name3 is not defined;
Bindings value: text: name3
Run Code Online (Sandbox Code Playgroud)
为什么?
我将问题代码包装在try-catch块(viewModel.recheckData2())中,但是,单击viewModel.recheckData3()时应用程序崩溃了!
我知道knockoutJS存储了错误状态(new model2()),但不知道该怎么办.
如何正确捕获错误?
谢谢!
这个线程(问题捕获错误输出)让你领略我正在努力解决的问题.我正在尝试从MSBuild运行grunt,并且Visual Studio输出窗口中不显示grunt错误.我在Visual Studio Express 2012 for Web中有一个.NET项目.我已使用IMPORT标记将外部项目导入到项目构建文件中,并且在导入的项目中,我有一个尝试运行grunt的Exec任务.我显然希望在Visual Studio输出窗口中看到grunt输出的错误消息,而不会有太多的麻烦.我找到了一个非常简单的解决方法,至少将输出发送到文本文件.
grunt.cmd > grunt-output.txt
Run Code Online (Sandbox Code Playgroud)
此输出文件位于我的.NET项目文件夹中,因此快速刷新和双击允许我打开输出文件并在Visual Studio中查看grunt输出的略微版本.
作为一个例子,我在grunt.js文件上运行一个lint任务,该文件包含JSHint会反对的内容.我故意没有放一个分号var hello,所以你得到错误信息Missing semicolon.
从命令行我得到一个格式良好的错误消息.
Running "lint:files" (lint) task
Linting grunt.js...ERROR
[L2:C10] Missing semicolon.
var hello
<WARN> Task "lint:files" failed. Use --force to continue. </WARN>
Aborted due to warnings.
Run Code Online (Sandbox Code Playgroud)
当我从Visual Studio运行它时,输出文件包含这种混乱的格式:
[4mRunning "lint:files" (lint) task[24m
Linting grunt.js...[31mERROR[39m
[31m[[39m[33mL2[39m[31m:[39m[33mC10[39m[31m][39m [33mMissing semicolon.[39m
var hello[31m[7m [27m[39m
[31m<[39m[33mWARN[39m[31m>[39m [33mTask "lint:files" failed. Use --force to continue. [39m [31m</[39m[33mWARN[39m[31m>[39m
[31mAborted due to warnings.[39m
Run Code Online (Sandbox Code Playgroud)
有没有人认识到所有这些方括号和数字正在做什么,谁能想到命令行开关或grunt开关或node.js开关,它们会解释它们并将它们变成格式化?看起来不像某种编码,它们看起来更像标签,向命令行环境建议如何格式化消息.请不要建议运行某种正则表达式替换功能.我想要快速简单的东西,否则它会变得比它的价值更麻烦.
更新:此链接输出被切断如果管道输入另一个应用程序指向10个月后节点中更上游的问题.虽然这已经整理好了,但至少可以获得更易读的输出文件.
我正在尝试将主题更改如下:
我复制了默认文件夹的内容并将其复制到名为david的文件夹中
我在style.css中使用replace all来在我的编辑器中使用.jstree-david更改.jstree-default的实例
我链接到大卫样式表
我将此代码添加到jstree配置对象的核心对象中
"themes": {
"name": "david",
"dots": true,
"icons": true
}
Run Code Online (Sandbox Code Playgroud)树渲染时没有通常的点和图标,单击不会展开根节点.
你如何为这个新的jstree创建一个主题?style.css文件和关联的sprite与我以前使用的版本1主题不同.
是否已经为jstree 3.0.0创建了任何主题?
更新:用于从StackOverflow获取我的信息,我很高兴能够非常及时地从jstree的作者那里直接获得有关此问题的帮助.
我真的在努力解决这个错误:
AbstractSmtpTransport.php第404行中的Swift_TransportException:连接到tcp://smtp.mail.yahoo.com:465超时
我希望有人可以对此有所了解.
这是我.env文件中的设置
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mail.yahoo.com
MAIL_PORT=465
MAIL_USERNAME=dev.email@yahoo.com
MAIL_PASSWORD=******
Run Code Online (Sandbox Code Playgroud) 在我的Laravel 5.5应用程序中,对Postgresql数据库运行select查询的DB :: select调用失败,而不显示Apache或Laravel错误日志中的任何错误,并触发"连接已重置"消息.此代码示例按预期运行,因为该函数get_users_with_roles存在.
public function missing_function(Request $request) {
try{
$all = DB::select('SELECT * from get_users_with_roles()', []);
}catch(Illuminate\Database\QueryException $qe){
return json_encode($qe->getMessage());
}
return json_encode($all);
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我用不存在的函数替换该SQL字符串:
public function missing_function(Request $request) {
try{
$all = DB::select('SELECT * from test()', []);
}catch(Illuminate\Database\QueryException $qe){
return json_encode($qe->getMessage());
}
return json_encode($all);
}
Run Code Online (Sandbox Code Playgroud)
连接被重置,我在日志中看不到任何错误.如果我在本机Postgresql环境中运行此错误查询:
SELECT * from test();
Run Code Online (Sandbox Code Playgroud)
我收到一条明确的错误消息:
ERROR: function test() does not exist
LINE 1: select * from test()
^
HINT: No function matches the given name and argument types. You might …Run Code Online (Sandbox Code Playgroud) 下面的迁移脚本在旧版本的Laravel中运行平稳,但是我将其添加到了新的Laravel 5.8中并运行了该脚本。我越来越Error: foreign key was not formed correctly
评估迁移:
public function up() {
Schema::create('evaluation', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id')->unsigned()->index();
$table->timestamps();
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
});
}
Run Code Online (Sandbox Code Playgroud)
用户迁移:
public function up() {
Schema::create('users', function (Blueprint $table) {
$table->bigIncrements('id');
$table->timestamps();
});
}
Run Code Online (Sandbox Code Playgroud) 更新3:9个月前的问题在Laragon环境中的Windows 10上的Laravel 5.8和Postgresql 11以及在Ubuntu计算机上的Apache 2.4仍然存在。雄辩模型实例delete()方法是否只是忽略外键约束?令人困惑:
我在Postgresql 9.3数据库中有两个表,公司和站点。他们与一侧的公司之间存在一对多的关系。如果已将网站分配给公司,则有一个外键约束可以防止删除公司。如果我尝试直接在数据库上使用SQL查询删除ID为“ KSL”的公司,则会收到预期的错误:
错误:对表“ companies”的更新或删除违反了表“ sites”上的外键约束“ sites_company_id_fkey”详细信息:仍从表“ sites”中引用键(company_id)=(KSL)。
我定义了一个artisan命令,其处理程序方法具有一个简单的try / catch块:
public function handle()
{
$company = Company::find('KSL');
try{
$company->delete();
}catch(\PDOException $e){
$this->info($e->getMessage());
}
}
Run Code Online (Sandbox Code Playgroud)
当我从控制台运行命令时,我得到了预期的错误消息:
SQLSTATE [23503]:外键冲突:7错误:表“ companies”上的更新或删除违反了表“ sites”上的外键约束“ sites_company_id_fkey”详细信息:仍从表“ sites”中引用键(company_id)=(KSL) 。(SQL:从“ companies”中删除,其中“ company_id” = KSL)
反映由Postgresql生成的本机错误消息。但是,当我使用类似的try / catch块使用Ajax调用从Controller调用Controller的delete方法时,未捕获到异常,并且调用失败,并且没有错误的详细信息。我简化了控制器方法,使其与控制台处理程序相同:
public function deleteModel(Request $request) {
try {
$id = 'KSL';
$company = Company::find($id);
$result = $company->delete();
return 'success';
} catch (\PDOException $e) {
return $e->getMessage();
}
}
Run Code Online (Sandbox Code Playgroud)
通常,我将从请求参数中获取$ id的值。如果在浏览器中使用带有RESTful URL的get请求,则在Firefox中会收到“连接已重置”消息,而在Chrome中会收到类似的消息。我已经提到了我的一个老问题,我认为它可以解决问题,但是跑步composer dump-autoload没有任何效果。我已经清除了缓存,重新安装了Laravel …