Я создал умный контракт Ethereum и играю с библиотекой Zepplin, чтобы создать контракт токена ERC20 и контракт CrowdSale, чтобы люди могли покупать мои токены.
Токен-контракт
pragma solidity ^0.4.24;
import "https://raw.githubusercontent.com/OpenZeppelin/openzeppelin-solidity/master/contracts/token/ERC20/ERC20.sol";
contract NourToken is ERC20 {
string public symbol = "NOR";
string public name = "Nourreddine Token";
uint8 public decimals = 18;
uint256 public constant INITIAL_SUPPLY = 10000 * (10 ** uint256(decimals));
constructor() public {
_mint(msg.sender, INITIAL_SUPPLY);
}
}
Краудсейл контракт
pragma solidity ^0.4.24;
import "https://raw.githubusercontent.com/OpenZeppelin/openzeppelin-solidity/master/contracts/crowdsale/Crowdsale.sol";
import "https://raw.githubusercontent.com/OpenZeppelin/openzeppelin-solidity/master/contracts/token/ERC20/ERC20.sol";
contract NourCrowdSale is Crowdsale {
constructor (
uint256 rate,
address wallet,
ERC20 token) public
Crowdsale(rate, wallet, token)
{}
}
Когда я пытаюсь произвести платеж по контракту Crowdsale, транзакция завершается неудачей, и я не знаю почему.
Вот пример неудачной транзакции: https://ropsten.etherscan.io/tx/0x8777f2fa58988419bbfc22c96c50470ea242db4ea865d0e85aaa9f2dd1206dbe
Кто-нибудь может объяснить, почему он не работает?
Большое спасибо.