title: Integrity Error
body: <p>Man am passing these values from the function to the db model as :</p>
  
  <p>function definition :</p>
  
  <pre><code>def send_as_notification_to(person , link_id , unique_content , which_app, notification_type ):
  
          nc = NotificationContent.objects.create( link_id = link_id , unique_content = str(unique_content))
          app_obj = MetaAppNames.objects.create(name = which_app)
          nt = NotificationType.objects.create( type = notification_type , app = app_obj) 
          notification = Notification(person = person)
          notification.content = nc
          notification.notification_type = nt
          notification.save()
          nc.save()
          app_obj.save()
          nt.save()
  </code></pre>
  
  <p>Calling view :</p>
  
  <pre><code>def crave_form(request):
      if request.method == 'POST':
          form = IcraveForm(request.POST)
          if form.is_valid():
              crave = form.save(commit = False)
              crave.person = request.user
              send_as_notification_to('admin' ,crave.id , crave.person , 'icrave' , 'crave' )
              crave.save()
      else:
          form = IcraveForm()
      return render(request, 'icrave/form.html', { 'form' : form})
  </code></pre>
  
  <p>but it's giving me error as :</p>
  
  <p>notification_notificationcontent.link_id may not be NULL</p>
  
  <p>Traceback ::</p>
  
  <pre><code>Environment:
  
  
  Request Method: POST
  Request URL: http://localhost:8000/icrave/create/
  
  Django Version: 1.3
  Python Version: 2.7.1
  Installed Applications:
  ['django.contrib.auth',
   'django.contrib.contenttypes',
   'django.contrib.sessions',
   'django.contrib.sites',
   'django.contrib.messages',
   'django.contrib.comments',
   'ec.kiosk',
   'ec.chakra',
   'ec.ajax',
   'ec.broadcast',
   'ec.connect',
   'ec.seek',
   'ec.feed',
   'ec.ec_model',
   'ec.info',
   'ec.domains',
   'ec.souk',
   'ec.meta',
   'ec.shastra',
   'ec.chat',
   'ec.log',
   'ec.icrave',
   'ec.notification',
   'doj',
   'django.contrib.admin']
  Installed Middleware:
  ('django.middleware.common.CommonMiddleware',
   'django.contrib.sessions.middleware.SessionMiddleware',
   'django.middleware.csrf.CsrfViewMiddleware',
   'django.contrib.auth.middleware.AuthenticationMiddleware',
   'django.contrib.messages.middleware.MessageMiddleware')
  
  
  Traceback:
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
    111.                         response = callback(request, *callback_args, **callback_kwargs)
  File "/Volumes/Disk2/workspace/ec/ec/icrave/views.py" in crave_form
    15.             send_as_notification_to('admin' ,crave.id , crave.person , 'icrave' , 'crave' )
  File "/Volumes/Disk2/workspace/ec/ec/notification/api.py" in send_as_notification_to
    6.         nc = NotificationContent.objects.create( link_id = link_id , unique_content = str(unique_content))
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/manager.py" in create
    138.         return self.get_query_set().create(**kwargs)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/query.py" in create
    360.         obj.save(force_insert=True, using=self.db)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/base.py" in save
    460.         self.save_base(using=using, force_insert=force_insert, force_update=force_update)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/base.py" in save_base
    553.                     result = manager._insert(values, return_id=update_pk, using=using)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/manager.py" in _insert
    195.         return insert_query(self.model, values, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/query.py" in insert_query
    1436.     return query.get_compiler(using=using).execute_sql(return_id)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/sql/compiler.py" in execute_sql
    791.         cursor = super(SQLInsertCompiler, self).execute_sql(None)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/sql/compiler.py" in execute_sql
    735.         cursor.execute(sql, params)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/backends/util.py" in execute
    34.             return self.cursor.execute(sql, params)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/backends/sqlite3/base.py" in execute
    234.             return Database.Cursor.execute(self, query, params)
  
  Exception Type: IntegrityError at /icrave/create/
  Exception Value: notification_notificationcontent.link_id may not be NULL
  </code></pre>