departament.id
и departament.name
const departmentSelect = document.querySelector('#department');
fetch('http://example.com/departament')
.then(response => {
if (!response.ok) {
throw new Error('Ошибка загрузки данных');
}
return response.json();
})
.then(data => {
const options = data.map(item => {
const option = document.createElement('option');
option.value = item.departament; // значение option
option.textContent = item.departament; // текст варианта
return option;
});
departmentSelect.append(...options);
})
.catch(error => {
console.error(error);
// Обработать ошибку
});
@font-face {
font-family: 'MyFont';
src: url('/path/to/font.woff2') format('woff2'),//пример пути
url('/path/to/font.woff') format('woff');//пример пути
}
Спустя несколько месяцев ситуация повернулась таким образом, что человек к которому меня и брали в помощь (он же и ментор) уходит с этой работы и моё положение становится несколько неустойчивым )
возможно перспективнее нацеливаться на веб или мобильные приложения? Куда перспективнее в плане спрос+зп+карьерный рост?
Да и будет ли интересен 30-летний джуниор там..?
Часто слышу об IT и как важны обществу программисты или компьютерщики, как мы , обыватели, их называем.Действительно важна эта отрасль так как в ней очень много специалистов, и действительно они важны. Так как если их не было, то не было бы социальных сетей, программ, автоматизированной работы на заводах ипд. итд.
Очень много внимания к ним государства, СМИ, женщин. Со стороны это кажется странно-чрезмерно преувеличенным.Действительно иногда кажется, что проблема гиперболизирована. Но скажу что наверное лучше бы не бло внимания(разве что только со стороны женщин:)).
И мне стало интересно, можно ли как-то взрослому познакомиться и понять IT-профессии? Не в теории, а практически? Можно ли это сделать через онлайн курсы или надо вживую?Так как IT профессий много и все они рассчитаны на разное, то для начала бы хотя бы определится чего вы хотите в итоге после знакомства(допустим какую-то свою мини программу для повседневности или телеграмм бота своего для своих нужд или личный сайт или что-то ещё). Насчёт онлайн курсов, это из области вечных вопросов, что лучше самому или через курсы ? Так как тут всё упирается в "ну можно и самому и информация доступна и бесплатно" или в "Да информации полно, но для меня слишком сложно\неструктуризировано\информация слишком противоречива\ самому слишком долго", я скажу что тут зависит всё от человека и его стремлений, потому что как самоучка может стать отличным специалистом, так и пройдя курсы вы можете не научиться не чему.
У меня же еще есть вопрос - есть какие-то навыки из IT-сферы, которые можно было бы освоить и использовать в других профессиях? Если в целом профессию не получится или не захочется освоить, но какие-то элементы покажутся полезными?Тут конечно смотря какую профессию вы осваивали, но всё же лучше будет привести пару примеров. Примеры: вы сможете уменьшить бумажную работу в офисе(изучали VBA и с помощью его скриптов можно облегчить использование Word и Excel); вы изучали Python тут у вас целая россыпь возможностей автоматизации обычных процессов на своём компьютере, лень перебирать данные в папке Python поможет; изучали работу сисадмина ? отлично дома можете настроить сеть со всякими интересными вежами вроде удалённого доступа к принтеру, привязку всех жителей вашего дома к системе отслеживания где они сейчас(если что это для того что бы не волноваться)); примеров много и они будут разные это лишь те что пришли мне в голову, не буду брать такие вещи как уверенное пользование ПК т.к. я не понимаю как оно может быть не уверенным(клавиатура ещё не кого не кусала).
И что важно в вашей профессии? Математический склад ума? Ведь это же не о любви к цифрам?
WITH temp_table AS (
SELECT printer,
CONCAT('{', STRING_AGG(QUOTE_LITERAL(materials), ','), '}') AS materials
FROM printers
GROUP BY printer
)
SELECT CONCAT('{"printer":"', printer, '", "materials":', materials::json, '}') AS json_format
FROM temp_table;
const getPrinterMaterials = async () => {
const query = `WITH temp_table AS (
SELECT printer, CONCAT('{', STRING_AGG(QUOTE_LITERAL(materials), ','), '}') AS materials
FROM printer_materials
GROUP BY printer
)
SELECT CONCAT('{"printer":"', printer, '", "materials":', materials::json, '}') AS json_format
FROM temp_table;`;
//где-то что-то не так с запросом т.к. получаю ошибку неверный синтаксис для типа json
const client = await pool.connect();
try {
const result = await client.query(query);
return result.rows.map(row => row.json_format);
} finally {
client.release();
}
};
module.exports = {
getPrinterMaterials,
};
const express = require('express')
const bodyParser = require('body-parser')
const cors = require('cors')
const db = require('./pool');
const app = express()
const port = 3000
app.use(bodyParser.json())
app.use(
bodyParser.urlencoded({
extended: true,
})
)
app.use(cors())
app.get('/printer_material', db.getPrinterMaterials);
npm install cors
CREATE TABLE printer_material (
printer_id integer REFERENCES printers (id),
material_id integer REFERENCES material (id),
PRIMARY KEY (printer_id, material_id)
);
INSERT INTO printer_material (printer_id, material_id)
VALUES
(1, 1),
(2, 1),
(2, 2),
(3, 1),
(3, 2),
(3, 3);
if (record) {
wrapper1.innerHTML =
`<div> <p>Вы точно хотите удалить запись:</p> <table> <tr> <th>Порядковый номер записи:</th> <th>Номер шахты:</th> <th>Название шахты:</th> <th>Адрес шахты:</th> <th>ФИО директора:</th> <th>Номер телефона:</th> </tr> <tr> <td>${record.id_k1}</td> <td>${record.n_mine}</td> <td>${record.name_mine}</td> <td>${record.adress}</td> <td>${record.full_name_of_direcor}</td> <td>${record.phone_number}</td> </tr> </table> <button type="submit" name="submit" class="dle">Удалить запись</button> </div>`; //это всё должно быть в одной строке
} else {
wrapper1.innerHTML = 'Записи с таким ID не найдено';
}
});
const button = document.querySelector('#button');
const closeButton = document.querySelector('#closeButton');
const form = document.querySelector('.form');
const popup = document.querySelector('.popup');
const table = document.getElementById('mine_info');
button.addEventListener('click', () => {
openForm();
});//вызов функции открытия формы
closeButton.addEventListener('click', () => {
closeForm();
});//вызов функции закрытия формы
const httpRequest = (url, options) => {
return fetch(url, options)
.then(response => response.json())
.then(console.log)
.catch(console.error);
};
const postOptions = {
method: 'POST',
headers: {
'Content-Type': 'application/json',
}
};//тело Post-запрос
const getOptions = {
method: 'GET',
headers: {
'Content-Type': 'application/json',
}
};//тело Get-запрос
const postRequest = data => {
return httpRequest('http://данные:3000/mine_info', {
...postOptions,
body: JSON.stringify(data)
});
};//указания при POST-запросе
const getRequest = () => {
return fetch('http://данные:3000/mine_info', getOptions)
.then(response => response.json())
.then(data => {
updateTable(data);
})
.catch(console.error);
};//указания при GET-запросе
const updateTable = data => {
data.forEach(item => {
const newRow = document.createElement("tr");
for (let key in item) {
const newCell = document.createElement("td");
newCell.textContent = item[key];
newRow.appendChild(newCell);
}
table.appendChild(newRow);
});
};//создание константы, где будет происходить действия с таблицей
window.onload = function() {
getRequest();
};//для того чтобы при загрузке страницы происходил GET-запрос
const openForm = () => {
form.classList.add('open');
popup.classList.add('popup_open');
};//функция открытия формы
const closeForm = () => {
form.classList.remove('open');
popup.classList.remove('popup_open');
};//функция закрытия формы
const formHandler = (e) => {
e.preventDefault();
const data = Object.fromEntries(new FormData(e.target).entries());
postRequest(data)
.then(() => {
closeForm();
location.reload();
})
.catch(console.error);
};//отправка данных из формы
form.addEventListener('submit', formHandler);
const Pool = require('pg').Pool
const pool = new Pool({
user: '',
host: '',
database: '',
password: '',
port: 5432,
})//Данные для подключения к БД
const getMineinfo = (request, response) => {
pool.query('SELECT * FROM mine_info', (error, results) => {
if (error) {
throw error
}
response.status(200).json(results.rows)
})
}//Создание константы getMineinfo, где вызывается SQL-команду "SELECT", для того чтобы взять данные из БД
const createRow = (request, response) => {
const { id_k1, n_mine, name_mine, adress, full_name_of_direcor, phone_number } = request.body
pool.query('INSERT INTO mine_info (id_k1, n_mine, name_mine, adress, full_name_of_direcor, phone_number) VALUES ($1, $2, $3, $4, $5, $6) RETURNING *', [id_k1, n_mine, name_mine, adress, full_name_of_direcor, phone_number], (error, results) => {
if (error) {
throw error
}
response.status(201).send(`User added with ID: ${results.rows[0].id}`)
})
}//Создание константы createRow, где вызываеться SQL-команда "INSERT INTO", для взятия информации из формы и записи её в БД
module.exports = {
getMineinfo,
createRow,
}//Берём из файла.js файла
//файл.js
const express = require('express')
const bodyParser = require('body-parser')
const cors = require('cors')
const db = require('./queries')
const app = express()
const port = 3000
app.use(bodyParser.json())
app.use(
bodyParser.urlencoded({
extended: true,
})
)
app.get('/', (request, response) => {
response.json({ info: 'Node.js, Express, and Postgres API' })
})
app.use(cors())
app.get('/mine_info', db.getMineinfo)
app.post('/mine_info', db.createRow)
app.listen(port, () => {
console.log(`App running on port ${port}.`
)})
C:/User/олина/AppData/Local/Microsoft/WndowsApps/python3.11.exe "e:/ 0101/ed.py"
, а нужно <code>C:/User/Полина/AppData/Local/Microsoft/WndowsApps/python3.11.exe "e:/ 0101/ed.py"</code>
. Конечно пользователя олина нет.)