×
This forum has been locked. Please submit new Feature Requests on GitHub: github.com/Jensen-Technologies/component-creator-issues/issues
Unique value field when you save the form
Randy Tobias
Yeni Üye
Posts: 4
7 yıl 9 ay önce #1479
Yazan: Randy Tobias
Randy Tobias tarafından Unique value field when you save the form konusunda yanıtlandı
Hi. I'm having a problem with this. Is the uniqueness being enforced via code? I created a unique field, and expected the column in the table to be unique, which it doesn't appear to be. I am interacting with my component's table from an external source, and it is adding several rows with the same email address, even though I had configured that field to be unique in the component creator.
Lütfen sohbete katılmak için Giriş ya da Hesap açın.
Randy Tobias
Yeni Üye
Posts: 4
7 yıl 9 ay önce #1481
Yazan: Randy Tobias
Randy Tobias tarafından Unique value field when you save the form konusunda yanıtlandı
Hi Andres,
That didn't really answer my question. I had wanted to know why the column in the DB is not set to unique when I mark a field as unique in the component creator. My external integrations have been modified to deal with this, but it makes my development a lot longer and makes my code far less efficient because in have to do a DB query and then and update. This is an extra DB call, plus some processing when just having the column be unique in the DB would do the same, but faster and easier. This is why I ask if there is a reason why the column in the DB is not made unique.
That didn't really answer my question. I had wanted to know why the column in the DB is not set to unique when I mark a field as unique in the component creator. My external integrations have been modified to deal with this, but it makes my development a lot longer and makes my code far less efficient because in have to do a DB query and then and update. This is an extra DB call, plus some processing when just having the column be unique in the DB would do the same, but faster and easier. This is why I ask if there is a reason why the column in the DB is not made unique.
Lütfen sohbete katılmak için Giriş ya da Hesap açın.
Søren Beck Jensen
Yönetici
Posts: 81
7 yıl 9 ay önce #1482
Yazan: Søren Beck Jensen
Søren Beck Jensen
Founder, Component-Creator.com
Søren Beck Jensen tarafından Unique value field when you save the form konusunda yanıtlandı
We use the built in Joomla method for ensuring that fields are unique which places a check in the bind method of the model. This allows Joomla to show better error messages and prevents SQL errors that would otherwise occur if we relied on the UNIQUE field in MySQL.
If you are already developing other extensions on top of the same table or allowing non Joomla tools access to modify your Joomla database tables, you are way beyond what we would consider standard use of Joomla and modifying the database table to have a UNIQUE key should not be much of an added task.
If we see more users who have this exact issue we will consider how we can improve this feature in the future.
If you are already developing other extensions on top of the same table or allowing non Joomla tools access to modify your Joomla database tables, you are way beyond what we would consider standard use of Joomla and modifying the database table to have a UNIQUE key should not be much of an added task.
If we see more users who have this exact issue we will consider how we can improve this feature in the future.
Søren Beck Jensen
Founder, Component-Creator.com
Şu kullanıcı(lar) Teşekkür etti: Randy Tobias
Lütfen sohbete katılmak için Giriş ya da Hesap açın.
Randy Tobias
Yeni Üye
Posts: 4
7 yıl 9 ay önce #1483
Yazan: Randy Tobias
Randy Tobias tarafından Unique value field when you save the form konusunda yanıtlandı
Thanks, this was the kind of answer that I was looking for. The reason why the approach was taken.
I certainly could manually update my table to add the uniqueness, but as we update the component (a lot now since we are still in development) and we develop on a test site before we move our finished products to a live site, we felt it would be safer at this point to add logic to check for and ensure uniqueness. Just too easy to miss altering the table at one crucial time and have things go wrong.
I would definitely be in favor of adding in the ability, maybe, to select an option on how uniqueness is enforced (through code or table structure) if this ends up being a reasonable possibility. Might even be interesting if you were able to provide a both option where both the binding method of the model, as well as altering the table are used.
Anyway, thank you very much for explaining the situation to me. I appreciate it.
I certainly could manually update my table to add the uniqueness, but as we update the component (a lot now since we are still in development) and we develop on a test site before we move our finished products to a live site, we felt it would be safer at this point to add logic to check for and ensure uniqueness. Just too easy to miss altering the table at one crucial time and have things go wrong.
I would definitely be in favor of adding in the ability, maybe, to select an option on how uniqueness is enforced (through code or table structure) if this ends up being a reasonable possibility. Might even be interesting if you were able to provide a both option where both the binding method of the model, as well as altering the table are used.
Anyway, thank you very much for explaining the situation to me. I appreciate it.
Lütfen sohbete katılmak için Giriş ya da Hesap açın.
Sayfa oluşturma süresi: 0.051 saniye