Monday, June 24, 2013

First week report - Relation Interface Improvements

I worked on 'Relation Interface Improvements' feature during the first week of GSoC and was able to successfully implement it. Now the cumbersome task of setting relational constraints has been made somewhat easy and is less error-prone. 
 
With the changes the long dropdown to select foreign column has been split to two dropdowns, one to select the foreign table and the other to select the foreign column. I also extended this to support cross database relations with an additional dropdown to select the foreign database for both internal and InnoDB types. Here is what the relation view interface looks like now.
 
 
So, when the user selects the database, the entries in the table dropdown are filtered only to show tables in that database and column dropdown is filtered in a similar manner when a table is selected. Own database is selected by default as it's more common to setup relations inside the same database.
 
Checking relational integrity feature was already supporting cross database relations. I added table name to the displayed text to make it clearer. I also updated a couple of FAQs in the documentation related to these features. 
 
For the next I have planned to implement 'Find and replace by column' feature which is quite long due. I have some preliminary work on it, and plan to finish implementing it during this week.

3 comments:

  1. Sounds good! Did you encounter any difficulties with this project? Looks like things are going well for you so far.

    ReplyDelete
  2. Hi Isaac,

    Thanks you for your comment.
    No I did not encounter any difficulties implementing this feature. I wrote to the developers' mailing list asking for their comments on the new feature. But it seemed they were too busy. What do you think about the user experience of the new feature?

    ReplyDelete
  3. Sorry I missed your response here until now. I am quite pleased with the interface. I think you found a good way to break a lot of information down in to a usable state.

    ReplyDelete