Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Index section is missing #529

Open
EhsanRezaei1981 opened this issue Jan 6, 2025 · 7 comments
Open

Index section is missing #529

EhsanRezaei1981 opened this issue Jan 6, 2025 · 7 comments

Comments

@EhsanRezaei1981
Copy link

EhsanRezaei1981 commented Jan 6, 2025

Hi Team,

I hope you're all doing well.

First and foremost, I want to express my gratitude for your hard work and dedication to this open-source project.

Recently, I pulled the code and started working on implementing the indexing functionality, which I feel is currently missing. From a database design perspective, this omission can be particularly challenging, especially when unique indexes need to be defined during the design phase.

I aim to complete this part by the end of the month, although my progress is limited as I can only dedicate two hours per day to this task.

Thank you for your support.

Best regards,
Ehsan

@brauliodiez
Copy link
Member

Hi @EhsanRezaei1981 thanks for the feedback, could you ellaborate a bit on the idea you mention ? How are you going to handle this feature?

Thanks

@EhsanRezaei1981
Copy link
Author

Hi,

I hope you are well.

As you know. in the schema design we can design tables. One of the main important parts of the table/collection design is making the unique indexes in order to do not accept duplicate values in the tables/collections. For instance, username must be unique in the user collection. So, in the design, the isolation level of the table/collection needs an index to handle that uniqueness. This index will guarantee that no duplicate username will be added into that table/collection, even when DB administrator wants to try to add or modify username directly in the MongoDB by script this unique index will check the uniqueness.

In the mongo-modeler, this part is missing. I have done my implementation, and I am happy to push my codes to your repository.

The following is the UI to show what I am explaining.
Manage_index

Regards,
Ehsan

@brauliodiez
Copy link
Member

Thanks @EhsanRezaei1981 could you provide me with a link to the forked repo so I can play with the functionallity?

Also, you can raise a PR as well from the forked repo.

Thanks
Braulio

@EhsanRezaei1981
Copy link
Author

EhsanRezaei1981 commented Jan 9, 2025

Hi Braulio,

I wanted to send PR but I am unable to push my branch. If you can give me that access, I can push the changes and then I will send PR.
Otherwise, you can use the following link to access to my changes.

https://github.com/EhsanRezaei1981/mongo-modeler.git

Manage_index__02

Regards,
Ehsan

@brauliodiez
Copy link
Member

Thanks Eshan,

You can fork the repo and raise a PR, below you will find a link on how it works:

https://daily.dev/es/blog/how-to-contribute-to-open-source-github-repositories

Thanks

@brauliodiez
Copy link
Member

Ported into our main repo on branch: https://github.com/Lemoncode/mongo-modeler/tree/feature/%23529-index-section-is-missing

Pending todo:

  • Unit tests are not passing, export tests, check what's going on.
  • Fields input, we should use here a multiple selection tree.
  • If we use the multiple selection tree, not sure if we will need the error message in case we need to implement it, let's use a message component inline with the styles

@EhsanRezaei1981
Copy link
Author

EhsanRezaei1981 commented Jan 19, 2025

Hi Brauliodiez,

I hope you are well.

I have fixed the code and pushed the changes. I ran 'npm run test' with no error.

Can you please explain the multiple selection tree clearly to me? Based on your explanation, I understand that instead of the free capture input, you want the list of fields to be selected. Please correct me if I am wrong. If yes, please note that we can do it in the next Manage Index version, as I do believe that it is not necessary at the moment.

Regards,
Ehsan

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Progress
Development

No branches or pull requests

2 participants