diff --git a/memopol/views.py b/memopol/views.py
index 1de22214262194498b3c82bd682c40f77ddbe9d3..952ec17b106e44758cbaf5385e0b57447344a424 100644
--- a/memopol/views.py
+++ b/memopol/views.py
@@ -28,7 +28,8 @@ class RepresentativeDetail(representatives_views.RepresentativeDetail):
 
     def get_context_data(self, **kwargs):
         c = super(RepresentativeDetail, self).get_context_data(**kwargs)
-        c['position_form'] = PositionForm()
+        c['position_form'] = PositionForm(
+            initial={'representative': self.object.pk})
         self.add_representative_country_and_main_mandate(c['object'])
         return c
 
diff --git a/representatives_positions/forms.py b/representatives_positions/forms.py
index 2e4bf9feeb0df399717e4c29af36559df4b93859..89256d55260b8723eda18fa48634d2ead9eb5731 100644
--- a/representatives_positions/forms.py
+++ b/representatives_positions/forms.py
@@ -8,7 +8,7 @@ from .models import Position
 class PositionForm(forms.ModelForm):
     class Meta:
         model = Position
-        fields = ['tags', 'datetime', 'text', 'link']
+        fields = ['tags', 'datetime', 'text', 'link', 'representative']
         widgets = {
             # Use localization and bootstrap 3
             'datetime': DateWidget(
@@ -17,5 +17,6 @@ class PositionForm(forms.ModelForm):
                 },
                 usel10n=True,
                 bootstrap_version=3,
-            )
+            ),
+            'representative': forms.HiddenInput
         }
diff --git a/representatives_positions/templates/representatives_positions/_form.haml b/representatives_positions/templates/representatives_positions/_form.haml
new file mode 100644
index 0000000000000000000000000000000000000000..2c11c8e36a3ba310c7312a8069783eea9734cd0a
--- /dev/null
+++ b/representatives_positions/templates/representatives_positions/_form.haml
@@ -0,0 +1,12 @@
+- load bootstrap3
+
+%form{:action => '{% url "representatives_positions:position-create" %}',
+      :method => 'post'}
+  - csrf_token
+
+  - bootstrap_form form
+
+  - buttons
+    %button{'type': 'submit', 'class': 'btn btn-primary'}
+      {% bootstrap_icon "star" %} Submit
+  - endbuttons
diff --git a/representatives_positions/templates/representatives_positions/position_form.haml b/representatives_positions/templates/representatives_positions/position_form.haml
new file mode 100644
index 0000000000000000000000000000000000000000..deb4b78dc90c3ae196e94b5cef01bf1d9e35adae
--- /dev/null
+++ b/representatives_positions/templates/representatives_positions/position_form.haml
@@ -0,0 +1,7 @@
+- extends 'base.html'
+
+- block head
+  {{ form.media }}
+
+- block content
+  - include 'representatives_positions/_form.html'
diff --git a/representatives_positions/views.py b/representatives_positions/views.py
index 69d7447786079fa767b537426e7182467c76804b..3b24ef11c15ee4198e366987c8fe8fd2b43a68f8 100644
--- a/representatives_positions/views.py
+++ b/representatives_positions/views.py
@@ -10,7 +10,7 @@ from .forms import PositionForm
 
 class PositionCreate(generic.CreateView):
     model = Position
-    fields = PositionForm.Meta.fields + ['representative']
+    form_class = PositionForm
 
     def get_success_url(self):
         return self.object.representative.get_absolute_url()
diff --git a/templates/representatives/representative_detail.haml b/templates/representatives/representative_detail.haml
index 6c98c1870f457523f62d66cecd4d7dd4d0cb8103..96f7c0e4bebd347c7bd1472f7788918fbcef1b0c 100644
--- a/templates/representatives/representative_detail.haml
+++ b/templates/representatives/representative_detail.haml
@@ -1,12 +1,9 @@
--# List representatives
-
 - extends 'base.html'
 
 - load humanize
 - load representatives_tags
 - load representatives_votes_tags
 - load representatives_recommendations_tags
-- load bootstrap3
 
 - block head
   {{ position_form.media }}
@@ -15,6 +12,7 @@
   .row
     .col-md-6
       - include 'representatives/_representative_block.html' with representative=representative
+
     .col-md-6
       %h2#votes Votes
 
@@ -72,16 +70,4 @@
             %a{:href => '{{position.link}}'}
               = position.link
 
-    %form{:action => '{% url "representatives_positions:position-create" %}',
-          :method => 'post'}
-      - csrf_token
-      %input{:type => 'hidden',
-             :name => 'representative',
-             :value => '{{ representative.pk }}'}
-
-      - bootstrap_form position_form
-
-      - buttons
-        %button{'type': 'submit', 'class': 'btn btn-primary'}
-          {% bootstrap_icon "star" %} Submit
-      - endbuttons
+    - include 'representatives_positions/_form.html' with form=position_form