Right now, multiple node add forms don't seem to work, I've searched the issue queue and found this (it's for D6 however): #899746: Can't insert multiple node add form into single panel page

I'm trying to create a two-column panel, each column containing an input form and below it a view of content. It's unclear how to go about it, as it can be created without problems in the UI and it doesn't warn that two forms don't work. I'm not sure whether to mark this a support request or a bug report.


a.ross’s picture

To answer my own question, it still doesn't seem possible but there is a workaround.

Create a mini panel containing ONLY the input form, one for every form. Then create a Quicktab instance, and add a block containing the mini panel.

I didn't want to have my forms hidden behind other tabs in the Quicktab instance, so I created a Quicktab instance for each form, with only one tab. Then I used some CSS to hide the tabs.

Will result in a hierarchy like this:
Panel > Quicktab instance > Mini panel > Form

jenlampton’s picture


merlinofchaos’s picture

Status: Active » Fixed

Any 'form' context turns the entire panel into a form, and there's no way to say "Well only this part of the panel will be a form". The FORM tag in HTML is absolute. YOu cannot nest them.

That means the only way to achieve what you're asking for is to use two mini panels and then embed each of them in a larger panel. You can use 'node' required context and, if it works (TBH I haven't tested it in a long time but I think it works) the 'node form from node' relationship to get the node inside the mini panel.

I don't see why you need a quicktab instance to use a mini panel. YOu can just put it directly in the larger panel.

a.ross’s picture

I tried that and it didn't work. I really wouldn't have thought of such a stupid workaround if simply embedding mini panels worked.

Although I simply used the "node add form" context to add the form. Isn't what you describe an edit form for a specific node? Anyway it shouldn't make a difference what the form contains. Or would it?

merlinofchaos’s picture

I'll have to doublecheck this and see; this has worked in the past but it could be possible something broke in the 7.x updates that we didn't catch.

It shouldn't matter which form context you use.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

Boobaa’s picture

I have ran into the same(? at least very similar) problem: I was to have a $node_type_A and $node_type_B node add form below/in a node view page of $node_type_C. Adding the (two additional) node forms to the node/%node panel was a no-go, since using the submit button on $node_type_A form led to adding a $node_type_B node (I think because of the messed up HTML, but haven't looked into that that deeply). Then I introduced a mini panel for $node_type_A and another for $node_type_B, added those mini panels to the "main" panel, and voilá: it solved the problem for me.

I was using ctools-7.x-1.2 with #1739718: assign property of non-object in ctools_block_content_type_render, panels-7.x-3.3 (vanilla) on drupal-7.16, FTR. Seems these three issues are related to each other: #1243430: Multiple node add forms (this one), #899746: Can't insert multiple node add form into single panel page and #1158850: Cannot use multiple forms in the same panel (wrongly nested forms).

aritra.ghosh’s picture

This is currently a sandbox project but almost ready to be used i suppose. Its called Advanced Form Block and can work with multiple node add/edit forms with ajax saving of each node.