Practice | Road Postgraduate Computer Test Guide ( Second Edition | Learning library
kandi X-RAY | Practice Summary
kandi X-RAY | Practice Summary
King's Road Postgraduate Computer Test Guide (Second Edition) Exercise Code
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of Practice
Practice Key Features
Practice Examples and Code Snippets
Community Discussions
Trending Discussions on Practice
QUESTION
ANSWER
Answered 2021-Jun-16 at 01:11The problem is that your CSS selectors include parentheses ()
and dollar signs $
. These symbols already have a special meaning. See:
You can escape these characters using a backslash \
.
QUESTION
I am writing my project and wondered. When I read literature or watch videos, I see that this is bad practice. Why? Is this bad for the system?
What is the difference between this
...ANSWER
Answered 2021-Jun-16 at 00:17You have to initialize all instance properties somehow. And you have to do it right up front, either in the declaration line or in your init
method.
But what if you don't actually have the initial value until later, like in viewDidLoad
? Then it is silly to supply a real heavyweight value only to replace it later:
QUESTION
I'm a student learning about database design and currently learning about the relationships of - one-to-one, one-to-many, many-to-many. I understand the concept well enough, but feel like I'm lacking experience/information on how it would be implemented in a real production scenario.
My question is this
If I have a blog website with a Blog Post as an entity and comments for each blog post, how would you handle the comments in the database?`
Would you use a one-to-many relationship and just store all the comments in a single table. Then link those comments to each blog post and user who created it?
What if each comment had a sub-comment? Would you create a separate table for sub-comments and link it to a single comment? Would that cause too much overhead and confusion within the DB itself?
I get the concepts and all, but don't understand best practices for handling what seems like basic stuff.
Thanks in advance!
...ANSWER
Answered 2021-Jun-15 at 16:06The simplest solution is to stick with a one-to-many relationship. Use one table and store one comment per row, with references to the post and the comment author, and a timestamp so you can sort the comments chronologically.
You seem uncertain about whether you need a "threaded comment" hierarchy. This is more complex, so if you don't need it, don't bother.
If you do need to show comment threads, then you should learn about running recursive queries in MySQL 8.0: https://dev.mysql.com/doc/refman/8.0/en/with.html#common-table-expressions-recursive
You still only need one table. Don't create a second table for sub-comments. Just store comments like in your one-to-many example, but each comment may link to its "parent" comment when it is a reply.
Another solution that many sites use is to skip implementing their own comment system, and just embed a comment service like Disqus. That's likely to be much more reliable and safe than yours. But if you're doing this as a learning exercise, that's worthwhile too.
QUESTION
I wish to suggest (perhaps enforce, but I am not firm on the semantics yet) a particular format for the output of a PowerShell function.
about_Format.ps1xml (versioned for PowerShell 7.1) says this: 'Beginning in PowerShell 6, the default views are defined in PowerShell source code. The Format.ps1xml files from PowerShell 5.1 and earlier versions don't exist in PowerShell 6 and later versions.'. The article then goes on to explain how Format.ps1xml files can be used to change the display of objects, etc etc. This is not very explicit: 'don't exist' -ne 'cannot exist'...
This begs several questions:
- Although they 'don't exist', can Format.ps1xml files be created/used in versions of PowerShell greater than 5.1?
- Whether they can or not, is there some better practice for suggesting to PowerShell how a certain function should format returned data? Note that inherent in 'suggest' is that the pipeline nature of PowerShell's output must be preserved: the user must still be able to pipe the output of the function to Format-List or ForEach-Object etc..
For example, the Get-ADUser
cmdlet returns objects formatted by Format-List
. If I write a function called Search-ADUser
that calls Get-ADUser
internally and returns some of those objects, the output will also be formatted as a list. Piping the output to Format-Table
before returning it does not satisfy my requirements, because the output will then not be treated as separate objects in a pipeline.
Example code:
...ANSWER
Answered 2021-Jun-15 at 18:36Although they 'don't exist', can
Format.ps1xml
files be created/used in versions of PowerShell greater than 5.1?
Yes; in fact any third-party code must use them to define custom formatting.
- That
*.ps1xml
files are invariably needed for such definitions is unfortunate; GitHub issue #7845 asks for an in-memory, API-based alternative (which for type data already exists, via theUpdate-TypeData
cmdlet).
- That
It is only the formatting data that ships with PowerShell that is now hardcoded into the PowerShell (Core) executable, presumably for performance reasons.
is there some better practice for suggesting to PowerShell how a certain function should format returned data?
The lack of an API-based way to define formatting data requires the following approach:
Determine the full name of the .NET type(s) to which the formatting should apply.
If it is
[pscustomobject]
instances that the formatting should apply to, you need to (a) choose a unique (virtual) type name and (b) assign it to the[pscustomobject]
instances via PowerShell's ETS (Extended Type System); e.g.:For
[pscustomobject]
instances created by theSelect-Object
cmdlet:
QUESTION
I've started to create UI tests for my PyQt5 widgets using QtTest but have run into the following difficulties:
In order to speed up things, some of my widgets only perform operations when visible. As it seems that QtTest runs with invisible widgets, the corresponding tests fail.
For the same reason, I cannot test program logic that makes a subwidget visible under certain conditions.
Is there a way to make widgets visible during test? Is this good practice (e.g. w.r.t. CI test on GitHub) and is QtTest the way to go?
I have tried to use pytest with pytest-qt without success as I couldn't find a proper introduction or tutorial and I do know "Test PyQt GUIs with QTest and unittest".
Below you find a MWE consisting of a widget mwe_qt_widget.MyWidget
with a combobox, a pushbutton and a label that gets updated by the other two subwidgets:
ANSWER
Answered 2021-Jun-15 at 17:01The problem is simple: QWidgets are hidden by default so isVisible() will return false, the solution is to invoke the show() method in init() to make it visible:
QUESTION
I'm trying to follow the Google Style of docstrings, but I'm not sure how to document a function (and the class itself) when there's functions that add/supdates an attribute. Currently I have something like this:
...ANSWER
Answered 2021-Jun-09 at 00:25There is a general format that can be followed. Although in certain scenarios, it becomes necessary to break away from the traditional style, your situation seems to be fairly basic. Here is a PEP convention guide for docstrings in Python:
QUESTION
I want to use firebase auth for my android and ios applications with custom backend. So I need some way of authentication for api calls from mobile apps to the backend.
I was able to find following guide in firebase documentation which suggests to sent firebase id token to my backend and validate it there with firebase Admin SDK. https://firebase.google.com/docs/auth/admin/verify-id-tokens
But this approach does not seem to be a security best practice. For example here https://auth0.com/blog/why-should-use-accesstokens-to-secure-an-api/ it is said that for API access one should use access tokens rather than id tokens.
Are there any good pattern for using firebase auth with my backend?
...ANSWER
Answered 2021-Jun-15 at 15:02firebaser here
Firebase itself passes the ID token with each request, and then uses that on the server to identify the user and to determine whether they're authorized to perform the operation. This is a common (I'd even say idiomatic) approach to authentication and authorization, and if there's a security risk that you've identified in it, we'd love to hear about it on https://www.google.com/about/appsecurity/
From reading the blog post it seems the author is making a distinction between authentication (the user proving their identify) and authorization (them getting access to certain resources based on that identity), but it'd probably be best to ask the author for more information on why that would preclude passing an ID token to identify the user.
QUESTION
When navigating from Composable A -> Composable B, say Composable A is a Lazy List scrolled halfway down and Composable B is a Lazy List Item Details Screen. Currently, the lazy list scroll position isn't stored, and when navigating back to Composable A from B, the list starts from item index 0. We could store it in a ViewModel, and read the value back, as well as use rememberSaveable, however, I am unsure as to how to implement rememberSaveable so that it scrolls to the saved position after back navigation.
Which method would be preferred to use following good code practices?
Edit: My problem arises from the fact that the listState isn't stored when navigating back from composable B to A. So if we scroll to the bottom and select an item and look at its details, when we navigate back to the list it is scrolled to the top, instead of saving its scrollState.
My composable
...ANSWER
Answered 2021-Jun-15 at 14:10I'm leaving this question up in case anyone else ever gets stuck in my situation, but the code works as it is meant to, I just committed a folly.
I didn't account for height changes with asynchronous image loading and as such, the list would not be at its saved position upon composable navigation, due to the list state being smaller than the screen height on returning to the composable.
However, If the images were given static containers to load into to that don't change their size, then upon back navigation, the composable would correctly display the saved list state.
QUESTION
Yet another question about the style and the good practices. The code, that I will show, works and do the functionality. But I'd like to know is it ok as solution or may be it's just too ugly?
As the question is a little bit obscure, I will give some points at the end.
So, the use case.
I have a site with the items. There is a functionality to add the item by user. Now I'd like a functionality to add several items via a csv-file.
How should it works?
- User go to special upload page.
- User choose a csv-file, click upload.
- Then he is redirected to the page that show the content of csv-file (as a table).
- If it's ok for user, he clicks "yes" (button with "confirm_items_upload" value) and the items from file are added to database (if they are ok).
I saw already examples for bulk upload for django, and they seem pretty clear. But I don't find an example with an intermediary "verify-confirm" page. So how I did it :
- in views.py : view for upload csv-file page
ANSWER
Answered 2021-May-28 at 09:27a) Even if obviously it could be better, is this solution is acceptable or not at all ?
I think it has some problems you want to address, but the general idea of using the filesystem and storing just filenames can be acceptable, depending on how many users you need to serve and what guarantees regarding data consistency and concurrent accesses you want to make.
I would consider the uploaded file temporary data that may be lost on system failure. If you want to provide any guarantees of not losing the data, you want to store it in a database instead of on the filesystem.
b) I pass 'uploaded_file' from one view to another using "request.session" is it a good practice? Is there another way to do it without using GET variables?
There are up- and downsides to using request.session.
- attackers can not change the filename and thus retrieve data of other users. This is also the reason why you should not use a GET parameter here: If you used one, attackers could simpy change that parameter and get access to files of other users.
- users can upload a file, go and do other stuff, and later come back to actually import the file, however:
- if users end their session, you lose the filename. Also, users can not upload the file on one device, change to another device, and then go on with the import, since the other device will have a different session.
The last point correlates with the leftover files problem: If you lose your information about which files are still needed, it makes cleaning up harder (although, in theory, you can retrieve which files are still needed from the session store).
If it is a problem that sessions might end or change because users clear their cookies or change devices, you could consider adding the filename to the UserProfile
in the database. This way, it is not bound to sessions.
c) At first my wish was to avoid to save the csv-file. But I could not figure out how to do it? Reading all the file to request.session seems not a good idea for me. Is there some possibility to upload the file into memory in Django?
You want to store state. The go-to ways of storing state are the database or a session store. You could load the whole CSVFile and put it into the database as text. Whether this is acceptable depends on your databases ability to handle large, unstructured data. Traditional databases were not originally built for that, however, most of them can handle small binary files pretty well nowadays. A database could give you advantages like ACID guarantees where concurrent writes to the same file on the file system will likely break the file. See this discussion on the dba stackexchange
Your database likely has documentation on the topic, e.g. there is this page about binary data in postgres.
d) If I have to use the tmp-file. How should I handle the situation if user abandon upload at the middle (for example, he sees the confirmation page, but does not click "yes" and decide to re-write his file). How to remove the tmp-file?
Some ideas:
- Limit the count of uploaded files per user to one by design. Currently, your filename is based on a timestamp. This breaks if two users simultaneously decide to upload a file: They will both get the same timestamp, and the file on disk may be corrupted. If you instead use the user's primary key, this guarantees that you have at most one file per user. If they later upload another file, their old file will be overwritten. If your user count is small enough that you can store one leftover file per user, you don't need additional cleaning. However, if the same user simultaneusly uploads two files, this still breaks.
- Use a unique identifier, like a UUID, and delete the old stored file whenever the user uploads a new file. This requires you to still have the old filename, so session storage can not be used with this. You will still always have the last file of the user in the filesystem.
- Use a unique identifier for the filename and set some arbitrary maximum storage duration. Set up a cronjob or similar that regularly goes through the files and deletes all files that have been stored longer than your specified maximum duration. If a user uploads a file, but does not do the actual import soon enough, their data is deleted, and they would have to do the upload again. Here, your code has to handle the case that the file with the stored filename does not exist anymore (and may even be deleted while you are reading the file).
You probably want to limit your server to one file stored per user so that attackers can not fill your filesystem.
e) Small additional question : what kind of checks there are in Django about uploaded file? For example, how could I check that the file is at least a text-file? Should I do it?
You definitely want to set up some maximum file size for the file, as described e.g. here. You could limit the allowed file extensions, but that would only be a usability thing. Attackers could also give you garbage data with any accepted extension.
Keep in mind: If you only store the csv as text data that you load and parse everytime a certain view is accessed, this can be an easy way for attackers to exhaust your servers, giving them an easy DoS attack.
Overall, it depends on what guarantees you want to make, how many users you have and how trustworthy they are. If users might be malicious, you want to keep all possible kinds of data extraction and resource exhaustion attacks in mind. The filesystem will not scale out (at least not as easily as a database).
I know of a similar setup in a project where only a handful of priviliged users are allowed to upload stuff, and we can tolerate deletion of all temporary files on failure. Users will simply have to reupload their files. This works fine.
QUESTION
ANSWER
Answered 2021-Jun-15 at 11:09What do you exactly mean with the restart app? If you want to restart the game or a specific scene you can just Load that scene in Unity with:
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install Practice
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page