nebucatnetzer / network_inventory Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU General Public License v3.0
License: GNU General Public License v3.0
a backup should be able to contain multiple computers.
Because with Veeam for example we can backup multiple VMs at once.
We sell a lot of Dell devices and it would be nice to use the service tags to
collect the warranty information directly from Dell. There's an API for that.
I implemented nested-admin currently in a very basic way. I should read the
documentation in order to make sure that I'm using it correctly.
might be achieved with the django-excel project https://github.com/pyexcel-webwares/django-excel.
This might be a nice to have feature but the copy button is more important to
achieve a similar funcition.
It is best practice to create a custom user model to allow future modifications
to the users without causing problems.
The admin tables show currently very little information about the various
objects. At minimum every object should display the customer it belongs to.
The normal django way just doesn't work for this project. There are so many forms and subforms I have to write that it is just a pain to do in normal Django + JavaScript. I therefore try to go with a JavaScript frontend which hopefully makes everything a bit more consistent.
So that one can search for a string in the responding column.
For security reasons it's recommended to change the name of the admin panel
url. This way automated tools can't find it so easy. It only increases the
security slightly.
The most useful way would probably directly on the computer table.
However that will require a bit more research because the table gets automatically generated by djang-tables2.
Since the backups contain a many to many relationship to the target device I probably need an additional form with a bit of JavaScript to properly create the CreateView.
I often find myself trying to get related objects. The method select_related
might help with that https://docs.djangoproject.com/en/2.2/ref/models/querysets/#select-related
This stackoverflow post should help https://stackoverflow.com/questions/4270330/django-show-a-manytomanyfield-in-a-template
This would allow for tests of the views which check explicitly what gets
returned by the view. Might be easier/faster then rendering the whole view.
However for some views it would be better to test the final view because the
template contains logic which can fail.
Show the user in the device details.
This should prevent technicians from assigning licenses which the customer has
already fully used.
The starting date shouldn't be allowed to be newer than the end date.
As a user I would like to have a way of quickly copy an object and make some
adjustments in order to add many objects after another.
It might be interesting to have some sort of notification system which shows when a license reaches its limit or when a warranty reaches its end.
I would like to use this to show the usable space in a RAID system. Currently
we enter this information by hand but it would be easier to calculate it
automatically.
When a user edits an object he should only be able to select objects from the
dropdowns he's allowed to view.
Meaning that we have to limit every dropdown in an update view to the customer
he's allowed to see. Like only the Nets or Users related to that customer.
We can use the get_objects helper function in core.utils or maybe I can create some sort of base class.
Currently I'm repeating a lot of code especially for permissions.
It feels like something that I should be able to collect in a base class from which all my views could inherit.
This way a technician could mark a user for deactivation and anyone could check
if there are users to deactivate. This would help if we would've to deactivate
a user at a certain date. The inventory tool could then show to all technicians
that the user needs to be deactivated. Then any technician could deactivate the
user and not just the technician responsible for the customer, increasing the
security of the customer.
Is related to the notification issue #28
Currently the tables show all the text from TextFields which looks very ugly. It should be limited to a few characters maybe 20-30 or so.
I have quite a lot of problems with the models of Django not being fully polymorphic.
Therefore I should implement this package: https://django-polymorphic.readthedocs.io/en/stable/quickstart.html
Would allow me to remove a lot of workarounds e.g. when returning from a form back to the previous object.
Just a simple table view which shows all groups for a given customer.
As the title says the the test_device_detail_view fails for some reason.
I haven't really figured out what the problem is.
When I run the view manually it works fine.
We need to be sure that the user can only see views and results which he is allowed to.
Simply hiding them is not enough he needs to get a 404 when he tries to access something he isn't allowed to.
Certain objects like computers should be unique for a customer because it doesn't make sense to have multiple computers with the same name.
Same goes for IP addresses in nets etc.
Currently we have to go to each object view and create an object there. It would be convenient if would could add them indirectly, for example like this:
When adding an IP to a computer we could display a "+" button in the form next to the Nets dropdown so that we can quickly add a new net object if needed.
This will require some AJAX stuff most likely.
Only superusers should be able to edit Customers objects.
All dropdowns should be sorted alphabetically instead of the order the objects have in the database.
This would allow technicians to create custom models without change
Maybe this approach would be something https://stackoverflow.com/questions/34907014/django-allow-user-to-add-fields-to-model
Various views to:
Means calculate the size all the VMs would use if they were thick.
This could help a technician to properly plan resources on a host.
When changing the HardwareModel field of a device the dropdown should be
filtered to the provided DeviceManufacturer.
We could show here
which customers/computers are using this software. Might be useful if something becomes end of live like Windows 7.
Then we could see where it is still used and contact those customers.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.