Is it a good practice to send schema in web application?
One drawback I see is the time consumed to maintain this addition that you mention: schema generation, sending, interpreting in the view. But of course this is for you to decide, if this overhead is compensated by the advantages you mentioned. If it is, then go for it. 
One other thing I would mention is: you want to do validation based on this schema. How many of the validations in your application can be done this way? Are there many cases in which validation will not fit in this pattern? Same question for grid generation, form generation, etc. If there are a lot, then maybe it is not worth it. I have more then once found a automatic solution like this that got me excited only to see later that it does exceptions for this pattern are many and overall I did not gain to much :). 
Overall, you decide. One last thing: try to think long term. 90% of the lifetime of an application is spent in maintenance. Try to understand what  happens after you release the application and bugs/small features requests are starting to come up.
I want to build a web app (SPA) that send the schema (not necessarily the raw db schema, but a representation of the data potentially in a JSON format) to the view, so in the view we can:

Generate grids based on that schema instead of wiring columns
Handle additional information from these fields, such as if it is editable or not, and the like.

This web app will allow users to see tabular information in a grid, and potentially do CRUD operations.
I see a lot of benefits on using the schema (We can implement validators based on the schema, forms generation should be very simple, and best, the impact of adding a simple field to the web app should be easily handled)
My question is: Is it a good strategy? Could you help me identify some drawbacks with this approach? (The stack I am using for this is not very important, but just for the sake of clarity, I am using Bottle (python) in the backend, and React in frontend)