Skip to main content

Posts

Showing posts from 2015

Rails: Grouping the records by group_by method

Many times we come across such situations where we need to group records, like when we want to display grouped messages, email, alerts .etc based on date or time. Here is the simple code which provides a significant use of group_by method. Controller Part class MessagesController < ApplicationController   def index     @message = Message .all     #Retrives all messages and divides into two groups todays messages and other messages     @grouped_messages = @message .group_by{ |t| t.created_at.to_date == DateTime .now.to_date }     if @grouped_messages [ false ].present?       #Create month wise groups of messages             @month_wise_sorted_alerts  = @grouped_messages [ false ].group_by{ |t| t.created_at.month}     end       end end @message .group_by{ |t| t.created_at.to_date == DateTime .now.to_date } The above line return us the messages in Ordered Hash with two keys true and false on which the messages which are of today's date will be valu

OOP Polymorphism

Definition : " Poly " stands for " many " and " morph " stands for " forms ". Generally, polymorphism means one name different uses . Technically, it means being able to send the same message to different objects and get different result. Polymorphism through Inheritance We can achieve polymorphism through inheritance . For example class GenericParser def parse raise NotImplementedError , 'You must implement the parse method' end end class JsonParser < GenericParser def parse puts 'An instance of the JsonParser class received the parse message' end end class XmlParser < GenericParser def parse puts 'An instance of the XmlParser class received the parse message' end end Here the GenericParser is the base class. Class JsonParser and XmlParser are inherited from the GenericParser. Now suppose we run the below code. puts 'Using the XmlParser' parser

5 Useful Android Apps

There are many apps available for Android but these are some useful apps which I use regularly. 1. Money View: Financial Planning Description: With the Free Money View app, you get a real-time visibility into your entire Personal Finances. It works by itself without any manual data entry - their daily expense manager app organizes our financial summary by analyzing SMS sent by our bank and billers to our phone. The app auto-tracks your expense, bills and account balances across all our financial accounts to help us stay on top of our money. The app is highly secure as it never reads any sensitive data - no full bank account numbers, no OTP, and no Netbanking login/password. As it anaylzes the money transactions via the SMS in our phone it is highly useful app for tracking our expenses, so we can know our money is going in which direction so we can control it. More information:  https://play.google.com/store/apps/details?id=com.whizdm.moneyview&hl=en