Legibility of code with ternary operators in Python
I think there is nothing wrong with using boolean-valued expressions to compute boolean results, instead of if/elif/else statements. However, it is still important to write these expressions clearly. Most of your expressions can be simplified, and none of your expressions actually require using the ternary operator.

If you write a ternary operator where the true-branch has the value True and the false-branch has the value False, then the ternary operator is superfluous.

If the condition is a boolean already, such as True if column['hidden'] != 0 else False, then you can simply write column['hidden'] != 0 as this will already be either True or False as required.

If the condition is not necessarily a boolean, e.g. True if my_list else False (not from your example) where my_list is a list and the condition tests if it is non-empty, then you can simply write bool(my_list) to calculate the boolean result you want.

When you have a condition like isCalendar or isString and not isFile which has both and and or, I recommend always using brackets to clarify the order of operations. Not everyone knows that and takes precedence over or, and even if they do know this, they may not know that you knew, and might trust the code less. Write isCalendar or (isString and not isFile) to make clear what this code does; or if you wanted it to be (isCalendar or isString) and not isFile, write that.

The expression for isReadOnly is very long, so I suggest splitting this over multiple lines. If an expression is inside (parentheses), then you can space it across multiple lines however you wish.

By the way, column['type_file'] is True is redundant, assuming column['type_file'] is always a boolean. If it's True, then True is True results in True, while False is True results in False; either way, the result is the same as the original value of column['type_file']. Imagine writing x + 0 where x is a number; it won't change the result, so you might as well just write x.