Hello there,
I am trying to get a definitive answer, and am getting conflicting information. Is there a hard-limit to the number of fields that can exist on a drupal 7 form?
I am working on a project that has the ability to import items from a csv file, and before they are added to the system the data is entered into a form so the user can validate the data before submission. (When submitted, it creates a new entity) There are scenarios where a user could potentially add 500 items to the .csv file. My understanding is that Drupal has a maximum of 61 fields (because of joins) that can be used on a form. Somebody else said the form can have unlimited fields, the issue only happens when you try editing or updating the entity (Which would be a problem).
If it's true that it only happens during edits or updates, and you can restrict anybody from ever being able to update or edit entities after they've been created, would it be possible that importing something with even say 200 items would cause a huge strain on the system or not?
Comments
Drupal can handle any number
Drupal can handle any number of fields. This is a server issue - you will need to do some benchtesting to see if the server you are using can handle multiple concurrent users for the form after you build it.
Note however that at the point where you have more fields than a server can handle, you probably also have a form too big for your users to handle, which is bad UX. You are better off coming up with a method of creating a multi-step form that doesn't require so many fields.
Contact me to contract me for D7 -> D10/11 migrations.
It has an unlimited amount? I
It has an unlimited amount? I was reading through several posts on the forums and people were saying that during editing, drupal uses JOINS to join the values and form data, and MySQL has a hard limit of 61 JOINS before it poops out. So this is incorrect information?
Also, that many items is not realistic, and would never be allowed, it was just used for an example. We are considering limiting it to 5 or 10 items, as each item has multiple fields itself. Anything above that would be imported via a CSV file and automatically transformed into an entity.
It has an unlimited amount? I
No, it's inline with what I said - MySQL is not Drupal, it's another software. Drupal can handle any number of fields, the question is whether the server can handle them. I'd guess that MySQL can have resources increased to allow for a higher number than what was written above.
Contact me to contract me for D7 -> D10/11 migrations.