solidity
ðereum
開発初心者です。
私が次の構造を持っているとしましょう(私のものはもっと複雑ですが、今のところこれでうまくいくと思います):
contract A {
address public owner;
function A() public {
owner = msg.sender;
}
isOwner(address _addr) {
return _addr == owner;
}
}
contract Base is A {
....
someMethod(address _addr) {
require(isOwner(msg.sender))
// do something with _addr
}
}
contract SomeContract{
Base public baseContract;
function SomeContract(Base _base) {
baseContract = _base
}
callingMethod() {
....
require(baseContract.someMethod(msg.sender))
....
}
}
callingMethod
から呼び出すとtruffle
、 が原因で失敗しますrequire(isOwner(msg.sender))
。msg.sender
を使用してその結果をコンソールに出力する所有者とは異なることがわかりましたEvent
が、その理由はわかりません。
なぜこれが起こっているのか知っている人はいますか?ありがとう !