I prefer to encapsulate a mutable reference to the instance in a scope.
let post_form = {
let mut post_form = PostInsertForm::new(
// your constructor arguments
);
post_form.some_mutating_method(
// mutation arguments
);
post_form
};
This way you're left with an immutable instance and you encapsulate all of the logic needed to setup the instance in one place.