How to show multiple names for one record but not duplicate the record?
you structure looks good . except that you could merge the amount to the part table . as every part is strictly associates with price.

also, only reason you will have duplicate rows is if any of your dimensions tables do not follow strict primary constraints.

Car
 - id (pk)
 - carname
 - image
 - category
 - status

Parts
 - partid (pk)
 - partname
 - amountValue

CarParts
 - carpartid (pk)
 - carid(fk)
 - partid(fk)
 - amountid(fk)

Category
 - id (pk )
 - categoryname