Skip to content

Instantly share code, notes, and snippets.

@profOnno
Last active January 21, 2016 21:37
Show Gist options
  • Save profOnno/908119c528f52e4b41ac to your computer and use it in GitHub Desktop.
Save profOnno/908119c528f52e4b41ac to your computer and use it in GitHub Desktop.
import DS from 'ember-data';
export default DS.Model.extend({
hash: DS.attr(),
size: DS.attr(),
height: DS.attr(),
version: DS.attr(),
merkleroot: DS.attr(),
time: DS.attr(),
nonce: DS.attr(),
bits: DS.attr(),
difficulty: DS.attr(),
mint: DS.attr(),
previousblockhash: DS.attr(),
nextblockhash: DS.attr(),
flags: DS.attr(),
proofhash: DS.attr(),
entropybit: DS.attr(),
modifier: DS.attr(),
modifierchecksum: DS.attr(),
tx: DS.attr(),
txs: DS.hasMany("tx", { async: true })
});
~
~
import DS from 'ember-data';
export default DS.Model.extend({
txid: DS.attr(),
version: DS.attr(),
locktime: DS.attr(),
isCoinbase: DS.attr(),
isCoinstake: DS.attr(),
vin: DS.attr(),
vout: DS.attr(),
blockhash: DS.belongsTo("block"),
confirmations: DS.attr(),
time: DS.attr(),
blocktime: DS.attr()
});
import Ember from 'ember';
import config from './config/environment';
const Router = Ember.Router.extend({
location: config.locationType
});
Router.map(function() {
+ this.route('about');
+ this.route('block', { path: "block/:block_id" });
+ this.route('info');
+ this.route('coin');
+ this.route('tx', { path: "tx/:tx_id" });
});
~
export default Router;
import DS from 'ember-data';
//export default DS.RESTSerializer.extend({
export default DS.JSONAPISerializer.extend({
normalizeFindRecordResponse(store, type, payload){
payload.data.txs = payload.data.tx; //one used as string array the other for DS.hasMany
return{
data: {
id: payload.data.hash,
type: type.modelName,
attributes: payload.data
}
};
},
});
import DS from 'ember-data';
export default DS.JSONAPISerializer.extend({
normalizeFindRecordResponse(store, type, payload){
console.log(payload);
console.log(payload.data.tx.txid);
// use CamelCase function..
payload.data.tx.isCoinbase = payload.data.tx.is_coinbase;
payload.data.tx.isCoinstake = payload.data.tx.is_coinstake;
return{
data: {
id: payload.data.tx.txid,
type: type.modelName,
//for now use data.tx as model
attributes: payload.data.tx
}
};
}
});
hello {{model}}
<br>
Size: {{model.size}}<br>
Heigth: {{model.height}}<br>
Heigth: {{model.height}}<br>
nextblockhash: {{#link-to "block" model.nextblockhash}}{{model.nextblockhash}}{{/link-to}}<br>
previousblockhash: {{#link-to "block" model.previousblockhash}}{{model.previousblockhash}}{{/link-to}}<br>
flags: {{model.flags}}<br>
tx: {{model.tx}}<br>
txs: {{model.txs}}<br>
tx: {{#each model.txs as |tx|}}<br>
<p> {{tx.txid}}</p>
{{/each}}
{{outlet}}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment