Comments (7)
I think that those who would possibly need that feature could go in and hand code the changes after they generate the models using plsm. That is an uncommon usage and it is better to have to add than to remove. That way for those who want to get going right away can and those who want more fine grain control or go against the norm will be able to continue to do that with a bit of tweaking on the result. Thoughts?
from plsm.
Or we could add a flag to the mix task to not have the columns be removed.
I was also thinking that if both created_at
and updated_at
existed, we could append timestamps
to the schema as well.
from plsm.
Sorry but I'm not following you on your first sentence. Are you referring to having the columns removed from the cast or from the entire schema?
If we were to replace created_at and updated_at with timestamps
then it is imperative that we also check the column type for those two columns and only replace the pair if both columns are datetimes. There will be issues if they are just date fields and we try to pass in a datetime.
from plsm.
Sorry, what I mean is that we could add an option to the mix task, so if the user wanted to keep the id/created_at/updated_at, they could do:
mix plsm --generate-ids
or something
I agree that we should check that the fields match though before removing it from the schema.
from plsm.
Ah ok, that makes sense. Would it make more sense to keep the options in the config? That way it is self documenting (when the config is generated it will generate a field with whatever default we chose) and it re-running the process simple (no need to remember flags). Honestly, I'm not sure if it is a "good" practice to have these types of things in config files instead of command line flags but that is where I'm leaning. Thoughts on that?
from plsm.
Either way is fine, honestly I don't see the config file being committed to version control anyway, and the config file is nice because as the repo grows you can just dump it into the config file.
Or we could convert it into a proper config (that lives in config.exs (or dev.exs/whatever).
from plsm.
This won't be implemented as it can be done by the user if need be.
from plsm.
Related Issues (20)
- Phoenix 1.4, generated schemas contain wrong syntax HOT 2
- Unique contraints cause duplicate fields when using postgres HOT 1
- Prompt to create destination folder if it doesn't already exist
- Please support `myxql` for MySQL? HOT 2
- integer columns not created in schema HOT 1
- migration file not generated HOT 1
- the generated config and the generated schemas had syntax issues or things missing HOT 2
- Postgres DDL Schemas HOT 1
- Port needs to be an integer HOT 1
- MySQL mediumtext HOT 2
- No function clause matching in Plsm.IO.Export.map_type for :none
- Hex dependency resolution failed HOT 7
- Postgres Mix plsm Output Error Geo Fields? HOT 1
- Error while running mix plsm HOT 1
- they may contain sensitive data such as database credentials HOT 2
- Mariaex Version Upgrade HOT 7
- Fix cast call HOT 4
- Primary keys, eg :id, clash with auto-generated Ecto primary keys HOT 4
- :text type should be :string HOT 1
- Some minor nits with Phoenix 1.4.10 and Elixir 1.9 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from plsm.