поскольку оно не является "собственным свойством" его родительского элемента.
Вы можете добавить параметр времени выполнения, чтобы отключить проверку или это предупреждение:
См. https://handlebarsjs.com/api-reference/ ... ype-access подробнее
POST /admin/admin/add-product 404 73,002 мс - 3340
Я пытался отправить форму для сбора данных на странице администратора, но res.post не работает. Браузер показывает «не найден», а приведенное выше сообщение об ошибке исходит из консоли. Я новичок и не знаю, что вызывает ошибку, но nodemon все еще продолжает работать.
Вот файл администратора, в котором объявлен файл res.post:
Код: Выделить всё
var express = require('express');
var router = express.Router();
/* GET users listing. */
router.get('/', function(req, res, next) {
let products=[{
name:"Iphone 15"
,category:"Mobile"
,discription:"flaghship phone by apple"
,image:"https://encrypted-tbn1.gstatic.com/shopping?q=tbn:ANd9GcR199XXubeTzwSceNjVSDZLSmAS9XKBkftsUbcSGADAGYXqqDRs17BYcd3jocTU_xeenejYWbzJbs394WBFqKBZOwJJcI3il9Pmcz8d3bA&usqp=CAE"
},{
name:"Samsung Galaxy S23 ultra"
,category:"Mobile"
,discription:"flaghship phone by Samsung"
,image:"https://encrypted-tbn0.gstatic.com/shopping?q=tbn:ANd9GcQ3uCOtqrOC3OSc1mveQKwrFN4bBVPsOk5FhSznuH-9bZMOU4qHs_-FYJscJ8nFGLDDZ3a_Cla-HCiHjkik3CaBRgsarJ-ZDKErAyLMLe2VRNBIeU1sti7Q&usqp=CAE"
},{
name:"Nothing phone 2"
,category:"Mobile"
,discription:"flaghship phone by NOthing"
,image:"https://encrypted-tbn0.gstatic.com/shopping?q=tbn:ANd9GcQvcN7cV_G4iXn6uy8_RoByjPj35Vh1MA0nDKFdg6YNep0EzLTbTsV40YqO1tKxxjFQl8DFOfDW1-vOFTEikA_ZdlrWh9WDwHeFIln0xDuuy2BQRp2wcl4ZTw&usqp=CAE"
},{
name:"MI 13 ultra"
,category:"Mobile"
,discription:"flaghship phone by apple"
,image:"https://encrypted-tbn0.gstatic.com/shopping?q=tbn:ANd9GcTv3moXySHfJ_y7ZuoC7S2gxrA2wWtvOe9Zw-YQiwX59uIBkR4IlZuptO9ThOnFiUGLSwpQjcOI8m0LCY19RMWJBcEn66jj_TioDlxIKCJgIekD60awjBYLIg&usqp=CAE"
}]
res.render('admin/view-products',{admin:true,products})
});
router.get('/add-product',function(req,res){
res.render('admin/add-product',)
})
router.post('/add-product',(req,res)=>{
console.log(req.body);
})
module.exports = router;
Код: Выделить всё
var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var hbs = require('express-handlebars')
var usersRouter = require('./routes/users');
var adminRouter = require('./routes/admin');
var fileUpload=require('express-fileupload')
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'hbs');
app.engine('hbs',hbs.engine({extname:'hbs',defaultLayout:'layout',layoutsDir:__dirname+'/views/layout/',partialsDir:__dirname+'/views/partials/'}))
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use('/', usersRouter);
app.use('/admin', adminRouter);
app.use(fileUpload())
// catch 404 and forward to error handler
app.use(function(req, res, next) {
next(createError(404));
});
// error handler
app.use(function(err, req, res, next) {
// set locals, only providing error in development
res.locals.message = err.message;
res.locals.error = req.app.get('env') === 'development' ? err : {};
// render the error page
res.status(err.status || 500);
res.render('error');
});
module.exports = app;
Код: Выделить всё
Add Product
Name
Category
Price
Discription
Image
submit
Подробнее здесь: https://stackoverflow.com/questions/771 ... sting-to-p
Мобильная версия