Followers and Following Teach Me To Code » Screencasts

    • Technologie

In order to get someone a timeline in JotRod, we need followers and following lists to compile the Jots from. This means that we need to add a new ColumnFamily called Followers and another one called Following. We don't have the joins capability from relational databases to do this for us.

I'm going to hijack the User model's database connection to create the ColumnFamilies. (We don't have migrations, yet.) Here's what I ran in the rails console:
cf_def = CassandraThrift::CfDef.new(:keyspace => "JotRod", :name => "Followers")
User.connection.add_column_family(cf_def)
cf_def = CassandraThrift::CfDef.new(:keyspace => "JotRod", :name => "Following")
User.connection.add_column_family(cf_def)
Now that we have the ColumnFamilies, I want to have syntax like this to define the relationships on the User model:
list :followers, :User
list :following, :User
This should provide the following API:

#followers - returns an array of users as specified from the Followers ColumnFamily
#followers(user)  - adds the user to the User object's followers list if it's not already there

and a similar API for following.

Sandra's repository

JotRod's repository

Download 680 MB
Download (iPod & iPhone) 165 MB
Take the 2011 Readers Survey

In order to get someone a timeline in JotRod, we need followers and following lists to compile the Jots from. This means that we need to add a new ColumnFamily called Followers and another one called Following. We don't have the joins capability from relational databases to do this for us.

I'm going to hijack the User model's database connection to create the ColumnFamilies. (We don't have migrations, yet.) Here's what I ran in the rails console:
cf_def = CassandraThrift::CfDef.new(:keyspace => "JotRod", :name => "Followers")
User.connection.add_column_family(cf_def)
cf_def = CassandraThrift::CfDef.new(:keyspace => "JotRod", :name => "Following")
User.connection.add_column_family(cf_def)
Now that we have the ColumnFamilies, I want to have syntax like this to define the relationships on the User model:
list :followers, :User
list :following, :User
This should provide the following API:

#followers - returns an array of users as specified from the Followers ColumnFamily
#followers(user)  - adds the user to the User object's followers list if it's not already there

and a similar API for following.

Sandra's repository

JotRod's repository

Download 680 MB
Download (iPod & iPhone) 165 MB
Take the 2011 Readers Survey

Top‑Podcasts in Technologie

Acquired
Ben Gilbert and David Rosenthal
Hard Fork
The New York Times
Lex Fridman Podcast
Lex Fridman
Apfelfunk
Malte Kirchner & Jean-Claude Frick
c’t uplink - der IT-Podcast aus Nerdistan
c’t Magazin
Flugforensik - Abstürze und ihre Geschichte
Flugforensik

Mehr von DevChat.tv

Adventures in Angular
Charles M Wood
React Native Radio
Jamon Holmgren, Robin Heinze, Mazen Chami
Ruby Rogues
Charles M Wood
JavaScript Jabber
Charles M Wood
JavaScript Jabber
Charles M Wood
Adventures in Angular
Charles M Wood