I'm creating a content type which is a user submittable form. The fields would be, name, email, phone, location, organization ID, etc. Normally one would use the Webform or Entityform module to create these forms. But, given the similarity between all my forms, I think it would be better to just create a content type altogether.

What I want to do is, use the Fields API to create a custom field type, which would be a form type. My current approach is, create a custom content type with the Nodes API. Custom content types allow you to add fields. There is no form field content type, so I will use the Fields API to create a custom field. I could use HTML/PHP to create the form field type, but I don't know if it will look consistent with the rest of the site, so I want to use the Forms API to create the forms.

I know how to create custom fields, but I can't get the custom field to render using the forms API yet. I have something like this

function mymodule_field_formatter_view($entity_type, $entity, $field, $instance, $langcode, $items, $display) {
  $element = array();
  
  switch ($display['type']) {
    case: 'user_input':
      foreach($items as $delta => $item) {
        $element[$delta] = drupal_get_form('mymodule_form');
      }
    break;
  }
  return $element;
}

For some reason the form isn't rendering. Anyone have any ideas as to why this could be happening?