Skip to content

Instantly share code, notes, and snippets.

View mayuroks's full-sized avatar

Mayur Rokade mayuroks

View GitHub Profile

Rails ActiveRecord (association) - Cheatsheet

http://guides.rubyonrails.org/association_basics.html

Types of associations

  • belongs_to : TABLE_NAME
  • has_one : TABLE_NAME [:through => :TABLE_NAME]
  • has_many : TABLE_NAME [:through => :TABLE_NAME]
  • has_and_belongs_to_many : TABLE_NAME [:join_table => :TABLE_NAME]
def main():
StNumber, StMark = input('Enter student number and student mark separated by a comma')
StNumber = StNumber.upper()
if len(StNumber)==9 and StNumber[0:6].isalpha() and StNumber[6:].isdigit():
with open("output.txt", "w") as f:
f.write(StNumber + "," + StMark + "\n")
else:
print("Invalid student number")
@mayuroks
mayuroks / AndroidManifest.xml
Created March 18, 2016 06:42 — forked from daichan4649/AndroidManifest.xml
show Fragment on LockScreen (for Android)
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="daichan4649.lockoverlay"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="15"
android:targetSdkVersion="17" />
/**
* Service layer that connects/disconnects to the server and
* sends and receives events too.
*/
public interface EventService {
void connect(String username) throws URISyntaxException;
void disconnect();
/**
* Implementation of {@link EventService} which connects and disconnects to the server.
* It also sends and receives events from the server.
*/
public class EventServiceImpl implements EventService {
private static final String TAG = EventServiceImpl.class.getSimpleName();
private static final String SOCKET_URL = "https://socket-io-chat.now.sh";
private static final String EVENT_CONNECT = Socket.EVENT_CONNECT;
private static final String EVENT_DISCONNECT = Socket.EVENT_DISCONNECT;
/**
* Main interface to listen to server events.
*
*/
public interface EventListener {
void onConnect(Object... args);
void onDisconnect(Object... args);
/**
* Main interface for accessing data. It extends EventListener to receive
* incoming events from a remote data source. In this case, a chat server.
*/
public interface DataSource extends EventListener {
void connect(String username) throws URISyntaxException;
void disconnect();
/**
* Remote data source.
*
*/
public class RemoteDataSource implements DataSource {
private static RemoteDataSource INSTANCE;
private static EventService mEventService = EventServiceImpl.getInstance();
private EventListener mRepoEventListener;
/**
* Repository can send events to a remote data source and can listen
* for incoming events from remote data source as well. This bidirectional
* flow of events is what makes the app realtime.
*
* Repository implements {@link DataSource} which can send and receive events.
*/
public class Repository implements DataSource {
private static Repository INSTANCE = null;
/**
* Listens to user actions and sends data to remote data source.
* <p>
* Presenter implements EventListener. Whenever the server sends events
* to the Repository, it passes those events to the Presenter via EventListener.
*/
public class ChatPresenter implements ChatContract.Presenter {
@NonNull
private final BaseSchedulerProvider mSchedulerProvider;