我理解比特币使用区块链技术来维护所有交易的分散分类账.我还阅读了许多帖子,暗指未来区块链技术的应用,我都不清楚这一点.
区块链技术只是一个分散的数据库,对数据进行了共识验证吗?如果是这种情况,数据库肯定会变得太大而无法有效地分散?
为了帮助我理解,有人能指出一个非比特币区块链应用程序的明确例子吗?
提前致谢.
我是node.js的新手,pg-promise来自同步编程背景,需要一种新思维.
我将首先介绍在主程序逻辑之前运行数据库初始化的场景.
以下示例:https: //github.com/vitaly-t/pg-promise/wiki/Learn-by-Example#simple-select
db.any("select * from users where active=$1", [true])
.then(function (data) {
// success;
})
.catch(function (error) {
// error;
});
Run Code Online (Sandbox Code Playgroud)
我的代码是否应该是:
db.query("DELETE FROM records")
.then(function (data) {
// success;
console.log("This is where all my main logic goes");
})
.catch(function (error) {
// error;
});
Run Code Online (Sandbox Code Playgroud)
或者它会读作:
db.query("DELETE FROM records")
.then(function (data) {
// success;
})
.catch(function (error) {
// error;
});
console.log("This is where all my main logic goes");
Run Code Online (Sandbox Code Playgroud)
我的理解是,对于后者,将在删除记录之前显示消息.
更新: 在阅读了许多有关承诺和回调的文章后,我理解pg-promise使用链接.then和.catch来表示成功和错误情况.我现在也相信我理解pg-promise命令应该放在一个函数包装器中,例如:
function initialiseDB() {
db.query("DELETE …Run Code Online (Sandbox Code Playgroud) 我的创建、更新和销毁“喜欢”的政策要求用户登录。
我对该政策的措辞如下:
class LikePolicy < ApplicationPolicy
def create?
user && record.user_id == user.id
end
def update?
create?
end
def destroy?
create?
end
end
Run Code Online (Sandbox Code Playgroud)
我的 like#create 控制器操作如下:
def create
@article = Article.find(params[:article_id])
@like = @article.likes.new(user_id: current_user.id, value: params[:value] == 1 : 1 ? -1)
authorize(@like)
@like.save
redirect_to @article
end
Run Code Online (Sandbox Code Playgroud)
然而,使用策略来确认用户已登录是不合逻辑的,因为代码将在前面的代码中失败,例如引用 current_user 的地方。
这是如何授权包含 user_id 的记录的公认做法吗?
我有一个项目,已从公共存储库克隆到我的 PC,并对其进行了调整并推送到 Heroku。
我现在希望将调整后的代码推送到 BitBucket 作为备份。
$ git status
On branch master
Your branch is ahead of 'origin/master' by 13 commits.
(use "git push" to publish your local commits)
nothing to commit, working directory clean
$ git remote
heroku
origin
Run Code Online (Sandbox Code Playgroud)
当我尝试添加 BitBucket 命令时,出现错误:
fatal: remote origin already exists
Run Code Online (Sandbox Code Playgroud)
也就是说,之后:
$ git remote add origin git@bitbucket.org:me/myproject.git
$ git push -u origin --all # pushes up the repo and its refs for the first time
$ git push origin --tags # pushes …Run Code Online (Sandbox Code Playgroud) 我有一个对象数组,我想删除重复的项目。下面讨论这个主题,但是 ES6 解决方案似乎不适用于对象: 数组中的唯一值
var myArray=[{fname:"Bob", sname:"Brown"},{fname:"Jill",sname:"White"},{fname:"Bob", sname:"Brown"}];
var unique = myArray.filter((v, i, a) => a.indexOf(v) === i);
/*
[ { fname: 'Bob', sname: 'Brown' },
{ fname: 'Jill', sname: 'White' },
{ fname: 'Bob', sname: 'Brown' } ]
*/
let unique = [...new Set(myArray)];
/*
[ { fname: 'Bob', sname: 'Brown' },
{ fname: 'Jill', sname: 'White' },
{ fname: 'Bob', sname: 'Brown' } ]
*/
Run Code Online (Sandbox Code Playgroud) node.js ×2
arrays ×1
bitcoin ×1
blockchain ×1
corda ×1
ethereum ×1
git ×1
hyperledger ×1
javascript ×1
pg-promise ×1
promise ×1
pundit ×1