SmartPyのTezosブロックチェーン時間
2 回答
- 投票
-
- 2019-12-04
すでに発見しているように、
sp.now
属性を使用すると、現在のタイムスタンプにアクセスできます.このメソッドの例は、 SmartPy.io IDE <にロードできる「ミニキティ」の例で確認できます./a>(ファイル
>ロードテンプレート
>Mini Kitties
).具体的には、エントリポイントのbuy
には、次のものがあります.@ sp.entryPoint def Buy(self、params): kitty=self.data.kitties [params.kittyId] sp.verify(sp.mutez(0)&lt; kitty.price) sp.verify(kitty.price&lt;=params.price) sp.verify(sp.amount==params.price) sp.send(kitty.owner、params.price) kitty.owner=sp.sender sp.if kitty.isNew: kitty.isNew=False kitty.auction=sp.now.addSeconds(self.newAuctionDuration) sp.verify(sp.now&lt;=kitty.auction) sp.if sp.now&lt;=kitty.auction: kitty.price=params.price + sp.mutez(1)
As you have already discovered, the
sp.now
attribute should give you access to the current timestamp. You can see an example of this method in the "Mini-kitties" example that you can load in the SmartPy.io IDE (File
>Load Template
>Mini Kitties
). Specifically in the entry pointbuy
, you'll find:@sp.entryPoint def buy(self, params): kitty = self.data.kitties[params.kittyId] sp.verify(sp.mutez(0) < kitty.price) sp.verify(kitty.price <= params.price) sp.verify(sp.amount == params.price) sp.send(kitty.owner, params.price) kitty.owner = sp.sender sp.if kitty.isNew: kitty.isNew = False kitty.auction = sp.now.addSeconds(self.newAuctionDuration) sp.verify(sp.now <= kitty.auction) sp.if sp.now <= kitty.auction: kitty.price = params.price + sp.mutez(1)
-
私はTezosBlockチェーンを初めて使用し、smartPyを使用してクラウドファンディングのスマートコントラクトを作成しています. このためには、TezosBlockチェーンの現在の日時が必要です.だから、誰かが私を助けることができますか、これを見つける方法は? sp.now メソッドを試しましたが、実装できません. どんな助けでもありがたいです. ありがとう